tree 0a1744a56d0c35c269878bf0b64965a16cbb4a37
parent c67f350071a0ac0324caaec2aaa9c3c2228c48cd
author Treehugger Robot <treehugger-gerrit@google.com> 1539567134 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 1539567134 +0000

Update git submodules

* Update platform/frameworks/base from branch 'master'
  to 1ad4aed0b96877092080ea2225cbd70f27ae8eb8
  - Merge "Build com.android.media.remotedisplay with java_sdk_library"
  - Build com.android.media.remotedisplay with java_sdk_library
    
    com.android.media.remotedisplay is built with java_sdk_library and api
    files are added by running "make update-api".
    The com.android.media.remotedisplay.xml is removed since it will be made
    auto generation by soong when the library is built with java_sdk_library.
    
    Bug:77577799
    Test: make -j
    Test: make checkapi
    Test: adb shell cmd package list libraries |\
          grep com.android.media.remotedisplay
          And check the com.android.media.remotedisplay library
    
    Merged-In: I40e2d5456877a434f7c1ae70b6ec3692db106537
    Change-Id: I40e2d5456877a434f7c1ae70b6ec3692db106537
    (cherry picked from commit 6e038837be37747ddabca2a7d8aaa3a182056b95)
    

* Update platform/prebuilts/sdk from branch 'master'
  to 8b8723818190a82d42a99b8213bcb67855414e74
  - Merge "Add api files"
  - Add api files
    
    API txt files for com.android.media.remotedisplay are added.
    The contents are empty as they didn't exist before API level 28.
    
    Bug: 77577799
    Test: make -j
          mkae checkapi
          make update-api
    
    Merged-In: I24b241277191c95881953b675351a6123aa1b09f
    Change-Id: I24b241277191c95881953b675351a6123aa1b09f
    (cherry picked from commit 0d19f9f20a763d62cdfc8766afcf0b5f804bc9be)
    

* Update platform/superproject from branch 'master'
  to 23ca431095f8b64492bb4503c5c7bdef9dad2202
  - Update git submodules
    
    * Update frameworks/base from branch 'master'
      to 1ad4aed0b96877092080ea2225cbd70f27ae8eb8
      - Merge "Build com.android.media.remotedisplay with java_sdk_library"
      - Build com.android.media.remotedisplay with java_sdk_library
        
        com.android.media.remotedisplay is built with java_sdk_library and api
        files are added by running "make update-api".
        The com.android.media.remotedisplay.xml is removed since it will be made
        auto generation by soong when the library is built with java_sdk_library.
        
        Bug:77577799
        Test: make -j
        Test: make checkapi
        Test: adb shell cmd package list libraries |\
              grep com.android.media.remotedisplay
              And check the com.android.media.remotedisplay library
        
        Merged-In: I40e2d5456877a434f7c1ae70b6ec3692db106537
        Change-Id: I40e2d5456877a434f7c1ae70b6ec3692db106537
        (cherry picked from commit 6e038837be37747ddabca2a7d8aaa3a182056b95)
        
    
    * Update prebuilts/sdk from branch 'master'
      to 8b8723818190a82d42a99b8213bcb67855414e74
      - Merge "Add api files"
      - Add api files
        
        API txt files for com.android.media.remotedisplay are added.
        The contents are empty as they didn't exist before API level 28.
        
        Bug: 77577799
        Test: make -j
              mkae checkapi
              make update-api
        
        Merged-In: I24b241277191c95881953b675351a6123aa1b09f
        Change-Id: I24b241277191c95881953b675351a6123aa1b09f
        (cherry picked from commit 0d19f9f20a763d62cdfc8766afcf0b5f804bc9be)
        