1. Merge "CDD:  Update the requirement condition to require supporting the `android.settings.ACTION_VOICE_INPUT_SETTINGS` settings intent for devices that support VoiceInteractionService." into nougat-dev
  2. CDD:  Update the requirement condition to require supporting the
    `android.settings.ACTION_VOICE_INPUT_SETTINGS` settings intent for
    devices that support VoiceInteractionService.
    
    Bug: 22388151
    Change-Id: Ie55da8d4f2654ee14cbd16ff91980630a10add97
    
  3. CDD: Relax CDD to allow device owner migration path for proprietary
    device admins.
    
    Bug: 67739177
    Test: N/A
    Change-Id: I110df3107c8ca3a04de5886eccb08a6b25791d18
    
  4. CDD: Relax CDD 3.8.3 for DND Rules.
    
    Relaxing CDD for DND as only supported for UI_MODE_TYPE_NORMAL see
    https://developer.android.com/reference/android/provider/Settings.html#ACTION_NOTIFICATION_POLICY_ACCESS_SETTINGS
    and  https://developer.android.com/reference/android/app/NotificationManager.html#addAutomaticZenRule
    
    Bug: 35325689
    Change-Id: Ifd8e37a7e0c55826626adadc38d567dd78881d6a
    
  5. Merge "CDD: Clarify the location where the Security Patch level's      are declared." into nougat-dev
  6. CDD: Relax CDD for activity switching.
    
    The number of displayed activities requirement has been relaxed from 20
    to 6, as supporting less than 20 activities is not breaking apps, is better
    for low memory devices, and finally this allows for more flexible UI choices.
    
    Bug: 32839572
    Change-Id: Ied279c85feb239c781c100cb60ebb59df95b6505
    
  7. CDD: Clarify the location where the Security Patch level's
         are declared.
    
    Bug: 28090724
    Change-Id: Ic16983e836261638f03f53bc7801119e5e65b545
    
  8. CDD: Typo 'libvukan.so' should be 'libvulkan.so.
    
    Bug: 34112761
    
    Change-Id: Id8a140e29d59bdf290d55c66d2138627c517b485
    
  9. CDD: Recommend UI for when visual effects are suppressed in DND.
    
    Not a mandatory requirement but only a recommendation as the
    user may be confused if an app has turned off the visual effects.
    
    Bug: 32182431
    Change-Id: Ib74c583b3a53b410e7bf5b5b70de0f39a08f9df3
    
  10. Merge "CDD: Minor typo in  Section 3.3" into nougat-dev
  11. CDD: Relax Overview title count requirement.
    
    Bug: 30158997
    Change-Id: I5a7513033be76c3be78628026baf04b2cdf2e9a6
    
  12. CDD: Minor typo in  Section 3.3
    
    Bug: 27614718
    Change-Id: I343aee9f00c664b51c22b638b1904dc31af34364
    
  13. CDD: Section 3.8.2 mistakenly included bullets for Section 3.8.8.
    
    Bug: 33130492
    Change-Id: I05109e9487c195fe8251164cd5a70557bf9a1cbe
    
  14. Docs: Final cleanup for CDD source.
    
       - Fix rowspan in table in section 2.1.
       - Put markdown links on a single line.
       - Escape parentheses in URLs.
       - Fix some internal links with dashes instead of underscores.
       - Replace tabs with spaces.
       - Other misc. cleanup.
    
    Bug: 32070486
    Change-Id: Ie44202b5a0bfe7133505880a0a9c74f08a9bac1f
    
  15. Merge "CDD: Strengthen accessibility recommendations" into nyc-dev
  16. CDD: Strengthen accessibility recommendations
    
    Bug: 26538731
    Change-Id: I972df3c8c668b270b951d3baf0e46315526e40cd
    
  17. CDD: Clarify secure lock screen requirements.
    
    As some device implementations started to add or modify the
    authentication methods for the lock screen, and more APIs
    are making an assumption on the security of the lock screen
    credentials, we are clarifying the requirements of what
    is a secure lock screen.
    
    Bug: 27246863
    
    Change-Id: I618999405a862125348758ae34a40701bfaa1b62
    
  18. Docs: fix grammar/typos in DO requirement
    
    Bug: 31484973
    Change-Id: I2c47d499223b29d49dfd004f8416a3b717daaa4e
    
  19. Merge "CDD: Clarify device owner requirements" into nyc-dev
  20. CDD: Clarify device owner requirements
    
      - Make it clear the requirements are in regards to the API surface
        provided by devices
      - More clearly explain that DO provisioning should only occur when no
        user data is present (to prevent device hijacking)
    
    Bug: 31484973
    
    Change-Id: I6f77f5688257e5664c6d57fe763c290df94d4da2
    
  21. Docs: Add line for format, use html link for ( url.
    
    Bug: 32070486
    Change-Id: Id559595f2054d6ca40a7349f215d9f8c2ad4534f
    
  22. Docs: Fixed Markdown link in html block.
    
    Bug: 32070486
    Change-Id: I6006a7f2b6230002e64f2e2926ded98762c9d3be
    
  23. Merge "CDD: Add requirements related to DND rules and policy set by apps" into nyc-dev
  24. CDD: Add requirements related to DND rules and policy set by apps
    
    Android 7.0 allow apps to add rules that would automatically
    enable or disable the Do-not-disturb (DND) mode on a certain
    condition. For example an app capable of detecting activities
    can turn on DND when the user is actually asleep at night.
    
    Also, Android 7.0 introduces an API that allow apps to set the
    DND notification policy  to suppress visual effects. 
    
    Bug: 27953118
    
    Change-Id: I57386eec34e46eb1b76e89372f1df975a8fec309
    
  25. Merge "CDD: Direct boot and FBE requirements" into nyc-dev
  26. Merge "CDD: Managed profile capable devices MUST support a work challenge" into nyc-dev
  27. CDD: Direct boot and FBE requirements
    
    Android N provide support for filebase encryption, allowing files to be
    encrypted with seperate keys bound to either the device or users'
    credentials. This allows system processe that do not handle sensitive
    user data (telephony, alarms, etc) to start before the user enters the
    credentials and elimiate the double boot necessary for full disk
    encryption.
    
    This requires the following changes and afforances in the CDD:
    - Sufficiently performant devices, with lockscreens, must use
      either FBE or FDE.
    - Added Direct Boot Requirements
    -- All Device must implement Direct Boot, regardless of encryption.
    - Added FBE Requirements
    -- DE anf CE keys must be bound to HW keystore and hardware
       root of trust (VB).
    -- Must not be able to disable "secure startup" option on FBE
       devices. (In earlier versions of android the FDE implementation
       supported a "secure startup" option which required the user to
       provide their credentials before the device could boot. This option
       was disabled by default. FBE and Direct Boot provides a better
       solution and device implementations MUST NOT offer any method to
       unlock the CE protected storage without the user supplied
       credentials.)
    -- MUST Support AES encryption as implemented in AOSP, MAY support
       others but AOSP MUST be used be default.
    -- SHOULD make essential preloaded app directBootAware.
    
    FDE requirements remain semantically unchanged, except it is not
    required if the device implementaion use FBE.
    
    Updated 3_10_accessibility to require that any pre-installed
    accessibilty service MUST be direct boot aware on FBE devices.
    
    BUG: 25897972
    BUG: 27207717
    
    Change-Id: I36fbce4937ebc161b09fdcb507db44f7b8990a3e
    
  28. CDD: Managed profile capable devices MUST support a work challenge
    
    Android 7.0 introduces the capability to have a separate lock screen
    credential for the managed profile. This lock screen, also known as
    the "work challenge" is shown when a user attempts to open any apps
    in the managed profile.
    
    Bug: 27672092
    
    Change-Id: I096728717e3aaf7bd76dc9985b2fcef5fcf153ef
    
  29. Docs: Spell check
    
    Change-Id: If9bf9affdf9d0ebc38f2a675e05ef620e03417ae
    
  30. CDD: Recommend new overview function key user interactions
    
    Bug: 27766265
    
    Change-Id: I4641eeb917ae23fa87ce9cd7dcb6a4e14648e04e
    
  31. Merge "CDD: Add multi-window mode requirements" into nyc-dev
  32. CDD: Add multi-window mode requirements
    
    Android 7.0 introduces official support of multi-window modes such as
    split-screen, freeform and picture-in-picture mode.
    
    While the support of such multi-window modes is only RECOMMENDED and
    not necessarily REQUIRED, it is important to ensure that all apps
    would have the same consistent behavior across varying implementations
    of multi-window modes.
    
    Bug: 26859660
    
    Change-Id: I39c3315248116d250dfe12c99b104b57a3c9907b
    
  33. CDD: Clarify native API namespace requirements
    
    Bug: 28250179
    Change-Id: Ie4ee61c274cb02af2b92c1f91fde35972b86315d
    
  34. Merge "CDD: Introduce native library namespace requirements" into nyc-dev
  35. Merge "CDD: Recommend accessibility services as part of out-of-the-box flow." into nyc-dev
  36. CDD: Recommend accessibility services as part of out-of-the-box flow.
    
    Recommend device implementations to not only preload accessibility
    services, but also have a mechansim to allow these services to be
    enabled during the out-of-box setup flow.
    
    Bug: 26538731
    
    Change-Id: I85ff91c0ddfc042aa5bf42526f87b1fb76d932bf
    
  37. Merge "CDD: Clarify navigation requirements for TV" into nyc-dev
  38. Merge "Docs: Add missing heading 3.2.3, Intent Compatibility" into nyc-dev
  39. Docs: Change redundant section 3.13 to 3.14.
    
    Change-Id: I56b7dd1a3f456e40ab34869fcf566a1823b4a303
    
  40. Docs: Add missing heading 3.2.3, Intent Compatibility
    
    This heading was missing from the converted CDD.
    
    Change-Id: I023e2fb3464b916b967282abd3d4cd7b6c4c5e6c
    
  41. Merge "CDD: Remove req to symlink libGLESv2.so to libGLESv3.so" into nyc-dev
  42. CDD: Remove req to symlink libGLESv2.so to libGLESv3.so
    
    Bug: 28250790
    
    Change-Id: Ie11e3793a02b868c19d8d1fc03aaa45c2ab63d37
    
  43. Merge "CDD: Android Extensions" into nyc-dev
  44. Merge "Docs: Improve definition of Core Applications intents" into nyc-dev
  45. Docs: Improve definition of Core Applications intents
    
    Clarify that the requirement is less about having the apps themselves
    but more about reserving the core app intents across devices.
    
    Bug: 27148595
    
    Change-Id: I58ae3deb21e37e54c02735cfdbe69388c82d846e
    
  46. Merge "CDD: Vehicle UI APIs" into nyc-dev
  47. Merge "CDD: Device implementations must support the @TestApi annotation." into nyc-dev
  48. Merge "CDD: Add native APIs and require memory req. for cameras." into nyc-dev
  49. CDD: Introduce native library namespace requirements
    
    The requirment is also tested by the CTS test,
    android.jni.cts.JniStaticTest#test_linker_namespaces
    
    
    Bug: 28250179
    
    Change-Id: I8650398adda6697bdd2c0f4401177d22360c3018
    
  50. Merge "CDD: Device/product names must not change." into nyc-dev
  51. CDD: Android Extensions
    
     ExtServices is a part of the platform that contains services used by
     apps that can be updated over the air without updating the whole
     platform. Similarly ExtShared will have common platform code which is
     to be loaded in the apps' processes. These extensions will provide
     means to extend API behaviors within the same platform API version.
    
    Bug: 28383190
    
    Change-Id: I6711a70866c779c4386c481e87e0ccf20f2a5d35
    
  52. Merge "CDD:Change Dreams to screen saver." into nyc-dev
  53. CDD: Clarify navigation requirements for TV
    
    Bug: 29640911
    
    Change-Id: I7b4abdc0b13bc88e3148af2e0fbb1ad92cf89448
    
  54. CDD: Activity Switching requirement change.
    
    Bug: 28420347
    
    Change-Id: Ic60edc89638875bec071e81c12e0aee5edf00bee
    
  55. Merge "CDD: Relax Overview title count requirement" into nyc-dev
  56. CDD: Vehicle UI APIs
    
    Introduces the required CarUiProvider and Vehicle Media UI, which
    ensure that applications are presented to users in a form
    appropriate for use while driving.
    
    Change-Id: Ib428bce870369e357289b79b412c5289e2eb118e
    
  57. Merge "CDD: Clarify Assist intent requirements for Automotive" into nyc-dev
  58. Merge "CDD: Recents not required for Automotive" into nyc-dev
  59. CDD: Recents not required for Automotive
    
    Recents switching is not required for Automotive. However, there
    must still be a way to switch between activities that does not
    cause undue driver distraction.
    
    Change-Id: I351dbc02287ba669a7b3e7aefcc8e559d6938181
    
  60. CDD: Device implementations must support the @TestApi annotation.
    
    A new category of APIs, annotated with @TestApi, are added so that 
    the correctness of the device implementation can be tested in an 
    automated fashion.
    
    Bug: 26777417
    
    Change-Id: Id7c5c91422998749a0eefcd860a5f4305027ffc5
    
  61. CDD: Add native APIs and require memory req. for cameras.
    
    Android 7.0 adds support to control the camera through the native
    APIs through the camera2 native APIs and we enlist the camera2 library
    in the standard library list.
    
    We also make it a requirement to have memory of at least 3 times the
    maximum camera resolution, which was previously recommendation only.
    See test android.hardware.camera2.StillCaptureTest#testAllocateBitmap
    for details.
    
    Bug: 28091251
    
    Change-Id: I4cc94f2289ad8e759955697aa521a7aeb9c2bb6e
    
  62. Merge "CDD: Move Quick Setting section to 3.13" into nyc-dev
  63. CDD: Device/product names must not change.
    
    Bug: 28488203
    
    Change-Id: Ida9feb81c9e4930a948f7772a1429c8140b58b67
    
  64. CDD: Relax Overview title count requirement
    
    Change-Id: I60a4e0f392933f1ec4e2af4938111b27c5fd5862
    
  65. CDD:Change Dreams to screen saver.
    
    Bug: 28268662
    
    Change-Id: If04884c19177f24ec519f9da05455d79ac178209
    
  66. CDD: Move Quick Setting section to 3.13
    
    The Quick Settings section, which had been added as section 3.9, was
    moved to section 3.13 because of the section 3.9, Device Adminstration.
    
    Change-Id: Ibcb3d9e485ef05c752698c594298cd0f0d1ac54b
    
  67. Merge "CDD: Device Policy transparency requirements." into nyc-dev
  68. Merge "CDD: Specify Vulkan related requirements." into nyc-dev
  69. CDD: Specify Vulkan related requirements.
    
    Clarify the updated Vulkan related requirements for Android 7.0.
    
    Bug: 27614718
    
    Change-Id: Icd78b7a4b17428dcf16e3d8d63a8483cd6c22905
    
  70. CDD: Device Policy transparency requirements.
    
    Android allows Device Admin apps that are set as Device Policy Managers
    to disable some settings and also have new APIs in Android 7.0 added to
    communicate this to the end user.
    
    Bug: 27672281
    
    Change-Id: Iab24b8aa5f67d066e8fb5cb199d2f1cff9f5c086
    
  71. Merge "CDD: Require support of 3rd-party tiles in Quick Settings" into nyc-dev
  72. Merge "CDD: Require Unicode 9.0 emoji support." into nyc-dev
  73. CDD: Require Unicode 9.0 emoji support.
    
    Android 7.0 includes the support for Unicode 9.0, hence the support 
    of emojis defined in the Unicode 9.0 specification are required so that
    (a) app developers can safely assume and use emojis in the UI, and
    (b) users can exchange messages including these emojis cross-device
    and cross-platform
    
    Also as emoji characters are frequently used in messages exchanged
    between various handheld devices, it is RECOMMENDED to implmeent the
    Unicode Technical Report #51 specifying the guidelines to ensure
    interoperability of emoji characters across platforms for skin tone
    and diverse family emojis as this Technical Report is expected to be
    adopted by major phone manufacturers.
    
    Bug: 27834719
    
    Change-Id: Id95cb0e087d8d8e0750134a081970e259e018fa9
    
  74. CDD: Require support of 3rd-party tiles in Quick Settings
    
    Android 7.0 introduces the quicksettings API that enable third-party
    applications to implement a TileService allowing users to add
    third-party tiles alongside system provided tiles in the quick settings.
    
    Bug: 27457842
    
    Change-Id: I327eb59b8a2617354991394400c95288988ecf7b
    
  75. CDD: System dialer & messaging apps must support cross profile contacts search
    
    Android 7.0 added the ability to search across main (personal) and
    managed (work) profiles. Preinstalled apps to implement this change
    is a UX benefit.
    
    Bug: 28017350
    
    Change-Id: I714957c5403d2d92081b575ed4a48d00080590b6
    
  76. CDD: Clarify Assist intent requirements for Automotive
    
    Automotive assistant must be included but has different
    requirement but has different audio, visual requirements to
    avoid distracting the driver. For example, increasing screen
    brightness specifically as a way to attract driver attention
    is potentially unsafe, especially while in motion.
    
    Change-Id: I6d7d52868d47da3e979f8b04ed75f939a2c0cad0
    
  77. Merge "CDD: Require support of change default dialer intent." into nyc-dev
  78. Merge "CDD: Clarify notifications for Automotive implementations" into nyc-dev
  79. Merge "CDD: 3.12. Require support for time shifting and strongly recommend DVR Bug: 29640911" into nyc-dev
  80. Merge "CDD: Recommend badging to represent work contacts in call, messaging UI" into nyc-dev
  81. CDD: Require support of change default dialer intent.
    
    Since API level 23, a new intent is added allowing third-party apps
    to ask the user whether they want to replace the default dialer app.
    
    Bug: 27644503
    
    Change-Id: I24dc2025cfcfd083aaa6d6505946b13f8c406b59
    
  82. Merge "CDD: Recommend Recents key for TV." into nyc-dev
  83. CDD: Recommend badging to represent work contacts in call, messaging UI
    
    Badging managed profile contacts allows users to distinguish work from
    personal contacts.
    
    Bug: 27735275
    Change-Id: I91c51ecd48dd507e597c499fa6b8f11b1450b513
    
  84. CDD: Add requirements for new OpenGL ES 3.2 support
    
    Android 7.0 introduces the support for OpenGL ES 3.2.
    
    Bug: 27800074
    
    Change-Id: I1b3f3ffba2ac3a9e4557fa66a233d5696ca32e0d
    
  85. CDD: Recommend Recents key for TV.
    
    Previously the Recents function navigation key was optional for
    Android Televisions, starting from Android 7.0 it becomes a
    recommendation.
    
    Bug: 29640911
    Change-Id: I1b5b5bd18e65115b03bec7b84c6342ca0ceefee4
    
  86. CDD: 3.12. Require support for time shifting and strongly recommend DVR
    Bug: 29640911
    
    Change-Id: If59cf66404a8e1b92049538e15845e56b51fcb47
    
  87. CDD: Clarify notifications for Automotive implementations
    
    Automotive notifications MUST display the CarExtender Notifications but
    have flexibility on how it is displayed to mitigate driver's
    distraction.
    
    Change-Id: Idc587874b93a50d8a62ae48073f4ce96b8060832
    
  88. Docs: Add CDD docs and the build script, and test examples
    
    Bug: 25199595
    This is based on the amended final CDD for M, hosted as commit
    1846a9622485855d572705a7972116caf0be3669 on the AOSP master branch.
    
    Change-Id: Ic3bd96cd652f7d7b13def03a4ca1f04645c34255