)]}'
{
  "log": [
    {
      "commit": "e8a403d57c8ea540f8287cdaee8b90f0cf9626a3",
      "tree": "13d471ba15c34ba265de9393e09b376a4b61a11f",
      "parents": [
        "ea168d229d316c84652e88ad0f19adbaa884d731"
      ],
      "author": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Thu Dec 31 07:44:55 2015 -0800"
      },
      "committer": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Fri Feb 19 11:31:45 2016 -0800"
      },
      "message": "Add support for update-on-boot feature.\n\nAdd a separate system service RecoverySystemService to handle recovery\nrelated requests (calling uncrypt to de-encrypt the OTA package on the\n/data partition, setting up bootloader control block (aka BCB) and etc).\n\nWe used to trigger uncrypt in ShutdownThread before rebooting into\nrecovery. Now we expose new SystemApi (RecoverySystem.processPackage())\nto allow the caller (e.g. GmsCore) to call that upfront before\ninitiating a reboot. This will reduce the reboot time and get rid of the\nprogress bar (\"processing update package\"). However, we need to reserve\nthe functionality in ShutdownThread to optionally call uncrypt if\nfinding that\u0027s still needed.\n\nIn order to support the update-on-boot feature, we also add new\nSystemApis scheduleUpdateOnBoot() and cancelScheduledUpdate() into\nandroid.os.RecoverySystem. They allow the caller (e.g. GmsCore) to\nschedule / cancel an update by setting up the BCB, which will be read by\nthe bootloader and the recovery image. With the new SystemApis, an\nupdate package can be processed (uncrypt\u0027d) in the background and\nscheduled to be installed at the next boot.\n\nBug: 26830925\nChange-Id: Ic606fcf5b31c54ce54f0ab12c1768fef0fa64560\n"
    },
    {
      "commit": "0ab076c5c9d8895ae1a77132e167dc70341a4084",
      "tree": "22c96f6bffa012931428e5abc7297ebf1a1484d6",
      "parents": [
        "8e2602ea26fe8eeec36a994f84d9f8ed03ef9090",
        "514a3fb7a611a93a7a60f7ff979eed6924f82222"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Feb 19 18:47:06 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 19 18:47:06 2016 +0000"
      },
      "message": "Merge \"media: expose audio sample format in MediaFormat\" into nyc-dev"
    },
    {
      "commit": "92584673d606713ac98a38591848ed33b92086f6",
      "tree": "43ce71e9724d3d79c8ae00f8906f199b96b8f4f3",
      "parents": [
        "024f979dfdae1938afc3c509ea9762c06784cef5",
        "02545f5dd20fcb2859ce60863f0c3b1071569aca"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Feb 19 13:46:37 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 19 13:46:38 2016 +0000"
      },
      "message": "Merge \"Track libcore commit aaebe4e16c487da7555cd230265acc211389781d.\" into nyc-dev"
    },
    {
      "commit": "02545f5dd20fcb2859ce60863f0c3b1071569aca",
      "tree": "940550121c3b35a5654dc49c9f6817db6d3977d0",
      "parents": [
        "31eb784f89c7642f7e61d7dd8c08622e9269e874"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Feb 19 11:41:27 2016 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Feb 19 11:41:27 2016 +0000"
      },
      "message": "Track libcore commit aaebe4e16c487da7555cd230265acc211389781d.\n\nbug: 27186457\nChange-Id: Ibd7d246893d9a97c8eea0e80d181cf2a5313b2d3\n"
    },
    {
      "commit": "0a05e4aef9fd83cef23d785c608faaf64cd408f8",
      "tree": "7b24a31c923a93aec4f1e29d0469f4a9db82f587",
      "parents": [
        "a7000fa8648af2457ab07cc736e2314bbc7eba22",
        "0db6066c7b0583610769fb0f9bc80ceafedefb75"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "weiwa@google.com",
        "time": "Fri Feb 19 09:27:19 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Feb 19 09:27:19 2016 +0000"
      },
      "message": "Merge \"Add Java API for secure RTT protocol.\" into mm-wireless-dev\nam: 0db6066c7b\n\n* commit \u00270db6066c7b0583610769fb0f9bc80ceafedefb75\u0027:\n  Add Java API for secure RTT protocol.\n"
    },
    {
      "commit": "0db6066c7b0583610769fb0f9bc80ceafedefb75",
      "tree": "bfe659703d962956f2971c666443a5410ffc6221",
      "parents": [
        "5947d11119d2ca1426d358a6850bd5a8d8490ab5",
        "71210b10225dd7c40ca1a07736c9d4c8559f5085"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "weiwa@google.com",
        "time": "Fri Feb 19 09:22:44 2016 +0000"
      },
      "committer": {
        "name": "Android Partner Code Review",
        "email": "android-gerrit-partner@google.com",
        "time": "Fri Feb 19 09:22:44 2016 +0000"
      },
      "message": "Merge \"Add Java API for secure RTT protocol.\" into mm-wireless-dev"
    },
    {
      "commit": "116d872d9c3167a270407af374d4696efa1b21d7",
      "tree": "79ea3f37f5c9e4ec67161a7271a44bee80747d64",
      "parents": [
        "04003d8936684d5bdb9ccbdca4149e113c62eb38",
        "612cce92ad96eda1146c3abd2afa7aaa4d4f2b3f"
      ],
      "author": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Fri Feb 19 02:36:48 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 19 02:36:50 2016 +0000"
      },
      "message": "Merge \"Introduce InputConnection#getHandler().\" into nyc-dev"
    },
    {
      "commit": "ca601d9303feb39ab164ddedfcb01225847fdc32",
      "tree": "a9ec81618e7d6c737ffcc1d6adb13a992062d2f3",
      "parents": [
        "d08b5a1173428e042b264389aed5396541cae6fb",
        "d16d1f519b1b00d538b1dcc153dc2cb5d8667ab6"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Feb 18 23:54:50 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 18 23:54:51 2016 +0000"
      },
      "message": "Merge \"TIF: Unhide TvContract.Programs.Genres#isCanonical\" into nyc-dev"
    },
    {
      "commit": "d16d1f519b1b00d538b1dcc153dc2cb5d8667ab6",
      "tree": "1e7925124e196f7fb5b3e7d528dedaf02a0e9589",
      "parents": [
        "24f62ea63482e6c5d5ba3357951e13e25221eb2e"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Feb 18 14:16:15 2016 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Feb 18 15:42:09 2016 -0800"
      },
      "message": "TIF: Unhide TvContract.Programs.Genres#isCanonical\n\nBug: 25726917\nChange-Id: I8717b1c9f39f8b5b9196658c1501d5abf2337eb9\n"
    },
    {
      "commit": "be132e6ea494023d4b8c37658a34efa8b705dce9",
      "tree": "c285dabfd9100f68c37b3c763fc95af7119adb49",
      "parents": [
        "b4cbd54ea94f3e2673cf7054cabc2247ca3a6ebf"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Feb 10 12:59:49 2016 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Feb 18 15:01:02 2016 -0800"
      },
      "message": "Keyguard wallpaper\n\nClients can now set a lock-only wallpaper that Keyguard can\nobserve and choose to draw as appropriate.\n\nBug 25454162\n\nChange-Id: I3fc30e02919e814b55dfded2a1a36ad9d2e55299\n"
    },
    {
      "commit": "71210b10225dd7c40ca1a07736c9d4c8559f5085",
      "tree": "818be6571b67229fa64c8f3e470da15dacfba82e",
      "parents": [
        "e629c067308964659a5886921642920cd2e1f2f4"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "weiwa@google.com",
        "time": "Thu Feb 18 13:07:43 2016 -0800"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "weiwa@google.com",
        "time": "Thu Feb 18 13:07:43 2016 -0800"
      },
      "message": "Add Java API for secure RTT protocol.\n\nChange-Id: I1c012f9e92e8b2af332524363f8f0c9921bf4bb5\n"
    },
    {
      "commit": "43fbc5f898a488dcfa9ecf3030f05f27ce5428f9",
      "tree": "e1eb414a8296db2b0956f2f8b68a77d7b382127d",
      "parents": [
        "24f62ea63482e6c5d5ba3357951e13e25221eb2e"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Feb 17 18:00:48 2016 -0800"
      },
      "committer": {
        "name": "Chris Tate",
        "email": "ctate@android.com",
        "time": "Thu Feb 18 20:47:36 2016 +0000"
      },
      "message": "Add android:backupInForeground\n\nAn app can now declare that it really needs to be backed up\nwhenever possible even if it is currently engaged in foreground-\nequivalent work.  Only applies to full-data backup clients: key/value\nbackups are not intrusive on normal lifecycle so they can already\nhappen in such circumstances.\n\nBug 26790411\n\nChange-Id: Ia0ebcc7a53da888ae9ae4d63cd4bcab6e3a2e866\n"
    },
    {
      "commit": "2c1ba9a961d4f96c26df260ee437655ad9e7c03e",
      "tree": "9e31be1e3cb94b1bd2a9cdf96f12e42e92dcfc09",
      "parents": [
        "18026642213698fc095a9510c2431862d3a7f310"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Feb 17 15:29:38 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Feb 18 10:54:11 2016 -0700"
      },
      "message": "Make BackupManager encryption aware.\n\nBackup requires both CE and DE storage to be available, so delay\nspinning up the backup system until the user is unlocked, since\nthat\u0027s when CE storage becomes available.  Note that devices without\nFBE immediately transition USER_SYSTEM into the unlocked state,\nsince their CE is always available.\n\nOffer to backup and restore files under both CE and DE.  Since DE\nis effectively the same as CE, most logic is simply duplicated for\nnow, but it could be simplified in the future.  Since system apps\ncan force their default storage location to DE, we always build\nexplicit CE and DE paths.\n\nAdd getDataDir() to give clean access to the top-level private data\ndirectory, but disclaim that apps shouldn\u0027t create files there.\n\nBug: 26279618\nChange-Id: Ic34a4b330223725db93b1d0f5c9dffc88002c61f\n"
    },
    {
      "commit": "af9c30aa741b0b385840ffcd60040d8524b95f89",
      "tree": "e0b9f6b8ea7758540c41b44293dffff8818fec3b",
      "parents": [
        "0f900c02d9aafa9a98ff39ea7d661c1cdfbddcdb",
        "aebd5dd786c38ca03995a22e3c219547c60d58d4"
      ],
      "author": {
        "name": "Sudheer Shanka",
        "email": "sudheersai@google.com",
        "time": "Thu Feb 18 13:58:04 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 18 13:58:05 2016 +0000"
      },
      "message": "Merge \"Update ACTION_SHOW_ADMIN_SUPPORT_DETAILS action to be hidden.\" into nyc-dev"
    },
    {
      "commit": "0f900c02d9aafa9a98ff39ea7d661c1cdfbddcdb",
      "tree": "cca39e8c48ecd981704b010f60e0f1ded698920e",
      "parents": [
        "087fd6829da7f8ce29db207d134d3b40771af257",
        "adef49640d6339e6b4a6ad736c5815e35d9b8803"
      ],
      "author": {
        "name": "Shawn Willden",
        "email": "swillden@google.com",
        "time": "Thu Feb 18 12:51:49 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 18 12:51:50 2016 +0000"
      },
      "message": "Merge \"Add support for extending key validity while on body.\" into nyc-dev"
    },
    {
      "commit": "adef49640d6339e6b4a6ad736c5815e35d9b8803",
      "tree": "d81f38b7d0964e32e9c94b3ded4c57c01712adbd",
      "parents": [
        "4dbf436cacf3278d607d4692a8596f35771b8567"
      ],
      "author": {
        "name": "Shawn Willden",
        "email": "swillden@google.com",
        "time": "Fri Jan 29 07:07:16 2016 -0700"
      },
      "committer": {
        "name": "Shawn Willden",
        "email": "swillden@google.com",
        "time": "Thu Feb 18 05:50:21 2016 -0700"
      },
      "message": "Add support for extending key validity while on body.\n\nBug: 21563854\nChange-Id: I3b622d2af77ec4ac3ba42407fc391112c153ef0f\n"
    },
    {
      "commit": "aebd5dd786c38ca03995a22e3c219547c60d58d4",
      "tree": "4ecb7f8a7fb6881dbc41fd0745ad59588db14da8",
      "parents": [
        "c3f42c102422f70f5bbe67105e16515ce9c306a3"
      ],
      "author": {
        "name": "Sudheer Shanka",
        "email": "sudheersai@google.com",
        "time": "Thu Feb 18 12:37:14 2016 +0000"
      },
      "committer": {
        "name": "Sudheer Shanka",
        "email": "sudheersai@google.com",
        "time": "Thu Feb 18 12:39:57 2016 +0000"
      },
      "message": "Update ACTION_SHOW_ADMIN_SUPPORT_DETAILS action to be hidden.\n\nBug: 27225657\nChange-Id: I85ad8bf88845e9164011b303ec9ca90d993fc20e\n"
    },
    {
      "commit": "514a3fb7a611a93a7a60f7ff979eed6924f82222",
      "tree": "f20773675f68bcb83bc219ea7b3adabcdfb5212c",
      "parents": [
        "3581fbc8ad02af4e9a9d20bc76ee782fe21bea65"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Feb 12 14:44:48 2016 -0800"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Feb 17 18:52:36 2016 -0800"
      },
      "message": "media: expose audio sample format in MediaFormat\n\nBug: 27172163\nChange-Id: I0ae4c0299839612893bb8a43e7016e49487e1a51\n"
    },
    {
      "commit": "014a0d11c7ac521b77c62278d31ce4d41c5f33b7",
      "tree": "9a01d4c3c841225aefb1573bcec533f2d0e98dcb",
      "parents": [
        "3c3770d8fe9f64fc92de02f3e52901748e1f30de",
        "34a9d5271915fb82c22811e6d17691a34b6c52c1"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Feb 17 22:43:19 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 17 22:43:20 2016 +0000"
      },
      "message": "Merge \"Removed Intent.OPEN_EXTERNAL_DIRECTORY.\" into nyc-dev"
    },
    {
      "commit": "3c3770d8fe9f64fc92de02f3e52901748e1f30de",
      "tree": "7b5f43c03b1fecae4d4b3c130b9ee7f374f69417",
      "parents": [
        "df8d02b07499d0def4a6761b793d4af329309254",
        "04a5d40cf35fb2c2fca2c1bfd573e5916d804ef6"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Feb 17 22:42:39 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 17 22:42:40 2016 +0000"
      },
      "message": "Merge \"Initial implementation of StorageManager.getVolumesList().\" into nyc-dev"
    },
    {
      "commit": "df8d02b07499d0def4a6761b793d4af329309254",
      "tree": "6bd2b4aa0de31c57aceaa6cabaea2e499da5d3dd",
      "parents": [
        "da449afbfeac5d9d20e94d4c34e4d00b18b4b017",
        "3fff7f5634ca788c1c84b6f1b316819ffd4c7cb2"
      ],
      "author": {
        "name": "Arunesh Mishra",
        "email": "arunesh@google.com",
        "time": "Wed Feb 17 22:42:33 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 17 22:42:34 2016 +0000"
      },
      "message": "Merge \"SoundTriggerHelper changes for GenericSoundModels.\" into nyc-dev"
    },
    {
      "commit": "34a9d5271915fb82c22811e6d17691a34b6c52c1",
      "tree": "6802483692ad40985af08bf9887498949fed648a",
      "parents": [
        "04a5d40cf35fb2c2fca2c1bfd573e5916d804ef6"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Feb 17 10:12:04 2016 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Feb 17 14:38:25 2016 -0800"
      },
      "message": "Removed Intent.OPEN_EXTERNAL_DIRECTORY.\n\nSuch intent is now encapsulated by StorageVolume.createAccessIntent().\n\nBUG: 26742218\n\nChange-Id: I2e2bd71126ecd74981f77b0af7d069f51aaece74\n"
    },
    {
      "commit": "3fff7f5634ca788c1c84b6f1b316819ffd4c7cb2",
      "tree": "20eda00acc17334e7efc29a22dd552b6900eee05",
      "parents": [
        "93dfc03ba632590e30604dde31b78628df962eff"
      ],
      "author": {
        "name": "Arunesh Mishra",
        "email": "arunesh@google.com",
        "time": "Tue Feb 09 12:15:19 2016 -0800"
      },
      "committer": {
        "name": "Arunesh Mishra",
        "email": "arunesh@google.com",
        "time": "Wed Feb 17 14:24:03 2016 -0800"
      },
      "message": "SoundTriggerHelper changes for GenericSoundModels.\n\n - Refactoring SoundTriggerHelper to handle generic sound models.\n     - Ability to store multiple models, callback and state information.\n     - Separate out initialization to be done per voice model, per any model\n     and per generic model.\n - Minor change to the API exposed -- removing the Handler from the\n   createSoundTriggerDetector call.\n - Added callback processing for onRecognitionEvent().\n - Added logic for stopAll().\n - Changes to the SoundTriggerTestApp to start/stop recognition.\n     - Multiple models (3).\n     - Ability to start/stop/load/unload individual models.\n\nBug: 22860713\nBug: 27222043\nChange-Id: Ie5d811babb956bead653fb560a43f1e549ed11bd\n"
    },
    {
      "commit": "04a5d40cf35fb2c2fca2c1bfd573e5916d804ef6",
      "tree": "eb79e0a16bcdd263d4bd93dae09e74c38ebf6ebd",
      "parents": [
        "c47738d8c22ae09cd93096888def0cf33f39d285"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Feb 08 16:44:06 2016 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Feb 17 13:14:39 2016 -0800"
      },
      "message": "Initial implementation of StorageManager.getVolumesList().\n\nThis change makes StorageManager.getVolumesList(),\nStorageManager.getPrimaryVolume(),  and StorageVolume public and adds a\nbuildAccessIntent() in the latter to automatically generate the\nACTION_OPEN_EXTERNAL_DIRECTORY intent, but it doesn\u0027t change the\nACTION_OPEN_EXTERNAL_DIRECTORY implementation yet (i.e., it still takes an URI with the physical path of the directory, instead of a StorageVolume and\na directorny name).\n\nBUG: 26742218\n\nChange-Id: I36c59c42b6579e125ec7f03c3af141260875a491\n"
    },
    {
      "commit": "fd9ec5a6006868905a2a0d97b74c9a2786907536",
      "tree": "ee09c3551a963e9c9161b5152a2630432fc7e436",
      "parents": [
        "5a21f2dd4b2d12afe19bf973015d33a5c9c5e0c6"
      ],
      "author": {
        "name": "Tony Mak",
        "email": "tonymak@google.com",
        "time": "Wed Feb 17 14:11:52 2016 +0000"
      },
      "committer": {
        "name": "Tony Mak",
        "email": "tonymak@google.com",
        "time": "Wed Feb 17 21:08:09 2016 +0000"
      },
      "message": "[ContactsContract] Add new API PhoneLookup.CONTACT_ID and DATA_ID\n\nIt is a mistake that we put contact id in PhoneLookup._ID.\nBut for SIP query, the contact id is put in Data.CONTACT_ID instead.\nFor backward-compability issue, we can\u0027t revert the change, but to\nsave developer from having logic like below, PhoneLookup.CONTACT_ID is\nintroduced.\n\nif (sip) {\n    get contact id in Data.CONTACT_ID column\n} else {\n    get contact id in PhoneLookup._ID column\n}\n\nSo for sip query, we put contact id in PhoneLookup.CONTACT_ID.\nFor other phone lookup query, we put contact id in both PhoneLookup.ID\nand PhoneLookup.CONTACT_ID.\n\nBUG:27149017\n\nChange-Id: I4155da29bbacdda0d43164b0ce11c7224a4eee67\n"
    },
    {
      "commit": "4dbf436cacf3278d607d4692a8596f35771b8567",
      "tree": "845effecb7cc911e43aca33034c6902f611b5f6d",
      "parents": [
        "a3b936aa55126173302a29c55b89ffc329083979",
        "07e27b75412de52b3ba5606e35a721e2b31ff094"
      ],
      "author": {
        "name": "Mitchell Wills",
        "email": "mwills@google.com",
        "time": "Wed Feb 17 20:43:47 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Feb 17 20:43:47 2016 +0000"
      },
      "message": "Merge \"Remove REPORT_EVENT_CONTEXT_HUB gscan option\" into mm-wireless-dev\nam: 07e27b7541\n\n* commit \u002707e27b75412de52b3ba5606e35a721e2b31ff094\u0027:\n  Remove REPORT_EVENT_CONTEXT_HUB gscan option\n"
    },
    {
      "commit": "07e27b75412de52b3ba5606e35a721e2b31ff094",
      "tree": "7bb942da108dfafad2ef46d6d597cce2e518f640",
      "parents": [
        "29a215268dfa18f5023dc3c06b33db68e91ae316",
        "5a982939d22b7fd3cb2a6ba107119b18f4904ca6"
      ],
      "author": {
        "name": "Mitchell Wills",
        "email": "mwills@google.com",
        "time": "Wed Feb 17 20:30:55 2016 +0000"
      },
      "committer": {
        "name": "Android Partner Code Review",
        "email": "android-gerrit-partner@google.com",
        "time": "Wed Feb 17 20:30:56 2016 +0000"
      },
      "message": "Merge \"Remove REPORT_EVENT_CONTEXT_HUB gscan option\" into mm-wireless-dev"
    },
    {
      "commit": "c86f234c51ebcb78164d850177eb2143112f9f65",
      "tree": "2e7d79947054d62e5deedf260365f49f4d4f59e5",
      "parents": [
        "5cb0e96a46aaa7fc917fad02835ef13ff9411fff",
        "fdf7c5d31fee113cb4602bfc159cbd90ecd9dc48"
      ],
      "author": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Wed Feb 17 20:06:51 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 17 20:06:52 2016 +0000"
      },
      "message": "Merge \"Add a Settings option of \"Disable automatic update\".\" into nyc-dev"
    },
    {
      "commit": "9f972de6e59da095670c65c5936114da43b5ec1b",
      "tree": "3283c95d7ecdbdeade557b0cffd72172fdbd98d2",
      "parents": [
        "e619e33b606dbdd885d5379a6f1fd60636ff59a2",
        "a77ef3c83ef63250dd8e5f5ab931bac98a722684"
      ],
      "author": {
        "name": "Anna Galusza",
        "email": "agalusza@google.com",
        "time": "Wed Feb 17 17:56:32 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 17 17:56:33 2016 +0000"
      },
      "message": "Merge \"Expose Intent for launching screen reader tutorial.\" into nyc-dev"
    },
    {
      "commit": "e619e33b606dbdd885d5379a6f1fd60636ff59a2",
      "tree": "d5ea7669a412776cb12a708c9636056c3ce2875c",
      "parents": [
        "25a7ee08f6eaa1c0e9e2b2a0ef9b6fe8ecf5da23",
        "baccf15a4adafe3fb3fdf23c35ea29d95c45c89b"
      ],
      "author": {
        "name": "Edward Cunningham",
        "email": "ejc@google.com",
        "time": "Wed Feb 17 17:50:44 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 17 17:50:45 2016 +0000"
      },
      "message": "Merge \"DO NOT MERGE Extend the DownloadManager.addCompletedDownload() method to support origin details.\" into nyc-dev"
    },
    {
      "commit": "25a7ee08f6eaa1c0e9e2b2a0ef9b6fe8ecf5da23",
      "tree": "218f63bfb1c63fed85437595ca20ab05c1a34d86",
      "parents": [
        "f58179a24b4de90d0d1a5601530f7c19a57405f6",
        "ab3b8936dc1f4a24cffea422baf9ef51f0de05e7"
      ],
      "author": {
        "name": "Steve McKay",
        "email": "smckay@google.com",
        "time": "Wed Feb 17 17:46:23 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 17 17:46:24 2016 +0000"
      },
      "message": "Merge \"Remove \"HOME\" directory. Use \"Documents\" instead.\" into nyc-dev"
    },
    {
      "commit": "3e7bfe98e0727f54fe369bfa6b416e1d040830a7",
      "tree": "d34c6d6358310dfe18b267b7d74347bfed31b2b6",
      "parents": [
        "f0922b2a4bd775f51fb386b16d2947cba509802f",
        "eb84b1843a3f6805c6109c1d9d023550229a3fc5"
      ],
      "author": {
        "name": "Andrei Stingaceanu",
        "email": "stg@google.com",
        "time": "Wed Feb 17 15:17:34 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 17 15:17:35 2016 +0000"
      },
      "message": "Merge \"Suspend packages - one call for multiple packages\" into nyc-dev"
    },
    {
      "commit": "eb84b1843a3f6805c6109c1d9d023550229a3fc5",
      "tree": "a689a4889e3978303935f49c2dd27eaf6303053b",
      "parents": [
        "9496df19ae7552370ec37cfb62cce3d919b0b116"
      ],
      "author": {
        "name": "Andrei Stingaceanu",
        "email": "stg@google.com",
        "time": "Tue Jan 26 18:39:55 2016 +0000"
      },
      "committer": {
        "name": "Andrei Stingaceanu",
        "email": "stg@google.com",
        "time": "Wed Feb 17 15:14:33 2016 +0000"
      },
      "message": "Suspend packages - one call for multiple packages\n\nRefactor setPackageSuspended into setPackagesSuspended. The rationale\nis that the consumers of this API are likely to want to remove\nmultiple packages at once. Rather than calling the API N times, call\nit just once.\n\nThe good part is that we already have the broadcast intent for\nsuspended packages take an array so only one broadcast. Less stress\non the system.\n\nAnother good part is that (right now) we only have one consumer of\nthis API and it will be easy to make changes once this CL goes in.\n\nAs a shell command, for consistency only allowed one package at\na time.\n\nBug: 22776761\nChange-Id: Ic8b8cf64d0a288ea3a282bb7b72f9d663b3b0049\n"
    },
    {
      "commit": "76c407b12fe00cb0d686f6e7961c7b13ff93f771",
      "tree": "8d11bf748f7e7d7dd1a569b0b22ce1dad778cc99",
      "parents": [
        "af11ff0c03a774324726ade96ef162dbe9f279f4"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Thu Feb 11 12:43:30 2016 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Feb 17 15:00:42 2016 +0000"
      },
      "message": "Hide java.security.Signatue#getCurrentSpi\n\nInternal implementation detail, shouldn\u0027t\nbe public.\n\nBug: 26689841\n\n(cherry picked from commit 4e559bcbf31a4f60620ed1a7a80e43f51d4dec83)\n\nChange-Id: I86b9a3fdcab8afe580d153fac28ab85606626672\n"
    },
    {
      "commit": "804d648138212a00bb260291e39fde0b327df709",
      "tree": "a2080bd9a7d0c0874a4b4565144ec5c2d2745238",
      "parents": [
        "910a367cbf36bd1f8d93416b9379224c76371dc8",
        "d99964fd66dc4dabe431ff995995de508f614216"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Wed Feb 17 11:34:11 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 17 11:34:12 2016 +0000"
      },
      "message": "Merge \"Implement getDocumentStreamTypes() in DocumentsProvider.\" into nyc-dev"
    },
    {
      "commit": "36aafd5086dbd2e604419a0e02a9c7f292f092cd",
      "tree": "6a86708ffc7a6f25f73ea77be94b8e2d0d0d6069",
      "parents": [
        "3c6e30818d5927aace44331c70020e42ce8f5bf2",
        "30714016700fd874ed96b0a8f8e4f52d9385c091"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Wed Feb 17 07:02:54 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 17 07:02:55 2016 +0000"
      },
      "message": "Merge \"Remove unused return in DocumentsProvider.removeDocument.\" into nyc-dev"
    },
    {
      "commit": "aa5605ffee270ef8802c5d9dc8df8ce71e377f55",
      "tree": "d46f2307ea2781ee29e124d0dcd3b1e4bb57c2fc",
      "parents": [
        "b305e16051192540e2e19863d4c3c0fb3e980db2"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Sat Feb 13 01:38:08 2016 -0800"
      },
      "committer": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Tue Feb 16 15:44:47 2016 -0800"
      },
      "message": "TIF: Rename setTvInputInfo to updateTvInputInfo\n\nAs TvInputInfo includes many complex objects as fields, it is not\npractical to check whether an existing TvInputInfo has actually\n\"changed\" by using simple comparisons when a new TvInputInfo object is\nset by a TV input service.\nThis code change renames\n  - setTvInputInfo to updateTvInputInfo\n  - onTvInputInfoChanged to onTvInputInfoUpdated\nto indicate that the callback is mechanically invoked whenever\nupdateTvInputInfo method is called.\n\nChange-Id: Ia351b3591d0ed9da962311546f0ba51158e6478e\n"
    },
    {
      "commit": "a77ef3c83ef63250dd8e5f5ab931bac98a722684",
      "tree": "a82959f4636ffab65eb6699f5016bd3cd751acea",
      "parents": [
        "afe3cd1aaf71e01b78097be57bf5a2aae266be07"
      ],
      "author": {
        "name": "Anna Galusza",
        "email": "agalusza@google.com",
        "time": "Tue Feb 16 14:34:42 2016 -0800"
      },
      "committer": {
        "name": "Anna Galusza",
        "email": "agalusza@google.com",
        "time": "Tue Feb 16 15:13:08 2016 -0800"
      },
      "message": "Expose Intent for launching screen reader tutorial.\n\nChange-Id: Iad479b3f3dc7d1ca23fa044946a93544067adee3\n"
    },
    {
      "commit": "ab3b8936dc1f4a24cffea422baf9ef51f0de05e7",
      "tree": "826c1a39b74954b614ceae3fab85f7e3a3196fb4",
      "parents": [
        "e4735a99598bf29847a9f12dd7fae6d7df880bc4"
      ],
      "author": {
        "name": "Steve McKay",
        "email": "smckay@google.com",
        "time": "Tue Feb 16 11:37:03 2016 -0800"
      },
      "committer": {
        "name": "Steve McKay",
        "email": "smckay@google.com",
        "time": "Tue Feb 16 14:52:35 2016 -0800"
      },
      "message": "Remove \"HOME\" directory. Use \"Documents\" instead.\n\nUse \"Folder\" as home icon for now.\n\nBug:27148009\nChange-Id: I9f57bba1c8e51ae7887861923f5baa8f69ec2e6e\n"
    },
    {
      "commit": "fdf7c5d31fee113cb4602bfc159cbd90ecd9dc48",
      "tree": "baa8945da86ba052615a6d75a927ceb947cc60ce",
      "parents": [
        "b305e16051192540e2e19863d4c3c0fb3e980db2"
      ],
      "author": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Mon Feb 15 20:59:15 2016 -0800"
      },
      "committer": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Tue Feb 16 12:22:22 2016 -0800"
      },
      "message": "Add a Settings option of \"Disable automatic update\".\n\nBug: 27193001\nChange-Id: Ibd205a749ebd674ca4500fd3b701888ac3ee8721\n"
    },
    {
      "commit": "baccf15a4adafe3fb3fdf23c35ea29d95c45c89b",
      "tree": "accc76cd24e51389c3b02f515d2b07d99a7f4eb6",
      "parents": [
        "f8872b0a37024c78dbfcf6f19d63c9555eec4709"
      ],
      "author": {
        "name": "Edward Cunningham",
        "email": "ejc@google.com",
        "time": "Fri Feb 05 00:44:45 2016 -0800"
      },
      "committer": {
        "name": "Edward Cunningham",
        "email": "ejc@google.com",
        "time": "Tue Feb 16 19:27:32 2016 +0000"
      },
      "message": "DO NOT MERGE Extend the DownloadManager.addCompletedDownload() method to support origin details.\n\nBug: 20294239\nChange-Id: Ic770a223c23013ebab08d22dd14e7192dc8e3109\n(cherry picked from commit 735a31e093d9262139c1da6bf426bc8166d4b18e)\n"
    },
    {
      "commit": "8da2bf49467f026da70a94d7cdf01b84d80bd07a",
      "tree": "0fa7d8767c05f5d8675557c289f25b8ed126721e",
      "parents": [
        "c3e78d5e6297ddb41bf73a0c0985005315d7949b",
        "edbe2652f99195687f461a7a651cf147ea17cf5a"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Feb 16 17:22:07 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 16 17:22:08 2016 +0000"
      },
      "message": "Merge \"TIF: Unhide TvInputInfo.isHidden/loadCustomLabel\" into nyc-dev"
    },
    {
      "commit": "115d2c189a46f535778d9dd0923f703ff2f888fe",
      "tree": "f082b998dc2345ccb24b47657c8b2104991225b6",
      "parents": [
        "c6ca265902d41a0553d15f660647410db6a3e889"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Feb 15 17:25:57 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Feb 15 17:45:42 2016 -0700"
      },
      "message": "Add feature versions for devices and apps.\n\nWe\u0027re starting to see more instances of device features that will\nincrement separately from the SDK API level, such as camera HAL,\nGPU capabilities, Bluetooth, and other hardware standards.\n\nThis change adds the ability for device features to specify a\nversion, which is defined to be backwards compatible.  That is, apps\nrequesting an older version of a feature must continue working on\ndevices with a newer version of that same feature.\n\nWhen a version is undefined, we assume the default version \"0\".\n\nBug: 27162500\nChange-Id: If890bf3f3dbb715e8feb80e7059a0d65618482ea\n"
    },
    {
      "commit": "64aebdc02b36c1ed4caa618b1d95e726f8823ac1",
      "tree": "b677ed9686b74988278ad8f4308fdcfbb8cd5171",
      "parents": [
        "eff90bd5ff6bd50325149a5010183277bd76f4c6"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Feb 15 11:07:26 2016 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Feb 15 11:08:06 2016 +0000"
      },
      "message": "Track libcore change 5731615b4d705b5af63a3126d84b8786862477d.\n\nbug: 26689841\nChange-Id: I463543c67cc525583d1fd6f7031a0d38f543d8a2\n"
    },
    {
      "commit": "30714016700fd874ed96b0a8f8e4f52d9385c091",
      "tree": "eeee9ca4e9f39ff32e4a8496777c0f5e96fe06d9",
      "parents": [
        "e4c1ccec7248443c23dd4a8d6725a4f492204726"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Mon Feb 15 17:07:37 2016 +0900"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Mon Feb 15 17:19:17 2016 +0900"
      },
      "message": "Remove unused return in DocumentsProvider.removeDocument.\n\nIt\u0027s not used anywhere. Exceptions should be thrown on an error.\n\nBug: 27113305\nChange-Id: I9d549169e177004597f136776c6763c93101c0c4\n"
    },
    {
      "commit": "d99964fd66dc4dabe431ff995995de508f614216",
      "tree": "b1eb1707a814beb8a0ec0199ac008459618693e3",
      "parents": [
        "e4c1ccec7248443c23dd4a8d6725a4f492204726"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Mon Feb 15 11:16:32 2016 +0900"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Mon Feb 15 14:14:28 2016 +0900"
      },
      "message": "Implement getDocumentStreamTypes() in DocumentsProvider.\n\nAccording to the documentation, getStreamTypes() must return all streamable\nMIME types. This CL takes the MIME types from COLUMN_MIME_TYPE as long as\nthe document is not virtual.\n\nIf the provider implements converters, then it should override\ngetDocumentStreamTypes.\n\nBug: 27156282\nChange-Id: I9ab149e097600a470fc9be8f1270f68929fdf851\n"
    },
    {
      "commit": "edbe2652f99195687f461a7a651cf147ea17cf5a",
      "tree": "3fa3180e251fe4343e5133e7bb18c9347efb11d9",
      "parents": [
        "c2ba290716a17474eb50b853158516712ba36dd8"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Feb 12 11:07:25 2016 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Feb 12 11:16:27 2016 -0800"
      },
      "message": "TIF: Unhide TvInputInfo.isHidden/loadCustomLabel\n\nNeeded to load input preferences set by user in settings.\n\nBug: 26850395\nChange-Id: I5cd4e2474724c247c765cafa829fc9d7f363da45\n"
    },
    {
      "commit": "8bff8a4e47159385c0416a076cd8f98b72aa9cfb",
      "tree": "2a27036cf9e1ba982402a9dbbdf05a03c26e6354",
      "parents": [
        "19ff7804b394e80a6adf731e756c3d7c361cba42",
        "36fb3a0e34e21cb8754627f7b4f31821c70b0ba0"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Feb 12 15:41:31 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 12 15:41:33 2016 +0000"
      },
      "message": "Merge \"Track libcore change 9fbdd1b27de1a3d1005468108.\" into nyc-dev"
    },
    {
      "commit": "b1b302660cf5b1b1c5b342cc90eca93b8f66890c",
      "tree": "a4f136a5b4eb819317b0b2ab1b26fec45c690edc",
      "parents": [
        "29b13190cd57bd823eb803f6fca03f671a32a5fe"
      ],
      "author": {
        "name": "Kenny Guy",
        "email": "kennyguy@google.com",
        "time": "Tue Feb 09 16:02:35 2016 +0000"
      },
      "committer": {
        "name": "Kenny Guy",
        "email": "kennyguy@google.com",
        "time": "Fri Feb 12 14:29:37 2016 +0000"
      },
      "message": "Support FBE for managed profiles.\n\nAllow launcher to see and attempt to launch non-crypto\naware application when profile is locked.\nHide unlock notification until parent user is unlocked.\nHave unlock notitication use confirm credentials to unlock\nthe profile.\nUpdated notification strings as per suggestions in mocks\nto make it clearer between users and profiles.\n\nBug: 27038260\n\nChange-Id: If2d2c8148670d814544f4edd44193d15da32a289\n"
    },
    {
      "commit": "36fb3a0e34e21cb8754627f7b4f31821c70b0ba0",
      "tree": "34cd19122c07275542913f058ac7dab7ae3da890",
      "parents": [
        "7a002a215db498d232100c0b227d145244a03412"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Feb 12 11:48:19 2016 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Feb 12 11:50:04 2016 +0000"
      },
      "message": "Track libcore change 9fbdd1b27de1a3d1005468108.\n\nbug: 26689841\nChange-Id: I3a0e5d3ab1ada313d73514913990a2aa19ad5b8f\n"
    },
    {
      "commit": "612cce92ad96eda1146c3abd2afa7aaa4d4f2b3f",
      "tree": "b0c33381082c2bf705a2fed68bc6221aa569c945",
      "parents": [
        "2036dad877336bf4d81202c334b1f2c81462bd9f"
      ],
      "author": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Thu Feb 11 17:47:33 2016 -0800"
      },
      "committer": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Thu Feb 11 17:47:33 2016 -0800"
      },
      "message": "Introduce InputConnection#getHandler().\n\nCurrently there is an internal hidden class named\nControlledInputConnectionWrapper which works as a proxy in the\napplication process to receive incoming binder calls from input method\nand dispatch those method calls again on an appropriate thread.\nAlthough this is a kind of implementation details, basically you can see\nthe same design everywhere in the Android.\n\nCurrently ControlledInputConnectionWrapper is initialized with\nview.getHandler(), where the view here is the View which was used to\ncall View#onCreateInputConnection().  This is actually a reasonable\nbehavior because we have generally assumed that there the only\nreasonable way to implement InputConnection is to extend\nBaseInputConnection, which is designed to be able to work only on the\nUI-thread associated with the target view.\n\nHowever, on Android N and onward, we are going to ensure that\nBaseInputConnection can be re-implemented on top of public APIs [1].\nAlthough most of applications should not try to do that, for certain\napplications such as web browsers and WebView it may make sense to let\ncustom InputConnection implementation run with a custom Handler so that\nthe application can respond to the IME without blocking the UI thread.\n\nTo do that, this CL introduces a new method\nInputConnection#getHandler(), which changes nothing as long as it\nreturns null, but if it returns non-null Handler, InputMethodManager\nwill use it to initialize ControlledInputConnectionWrapper.\n\nNote that InputConnection#getHandler() is not for IME developers.\nIt just returns null when called in the IME process.\n\n [1] See Bug 24688781 for details.\n\nBug: 26945674\nChange-Id: Id9e579bb3e2966986cdcb1c34bc8cacfeca2e1a9\n"
    },
    {
      "commit": "d0e47d0aef55d203fc67df4aa64cfb70b46022ea",
      "tree": "f2ff86837222d6927adff2beb8a866087212d30f",
      "parents": [
        "aa72470acb85d903471aac4da0c443b77b0eb55b",
        "25c9c5edab42d6c9e9e0469ab04fb7ff87704d1c"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Fri Feb 12 00:05:00 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 12 00:05:01 2016 +0000"
      },
      "message": "Merge \"TIF: Separate service connection errors from recording errors\" into nyc-dev"
    },
    {
      "commit": "25c9c5edab42d6c9e9e0469ab04fb7ff87704d1c",
      "tree": "cefb97f2f5ba3997df0306f84ccc9c223bc9266e",
      "parents": [
        "567704bca22c08a6fbfdaa15d054e0e3124b38e8"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Thu Feb 11 00:59:10 2016 -0800"
      },
      "committer": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Thu Feb 11 15:44:55 2016 -0800"
      },
      "message": "TIF: Separate service connection errors from recording errors\n\nAlso clarify the expected behaviors when an error has occurred in a\nrecording session.\n\nBug: 27110861\nChange-Id: I811197e45ea94b1b0e151d534a1f030a84b89d10\n"
    },
    {
      "commit": "ade2f66fd8ff8780f580d3e135b2b9b892adc3e6",
      "tree": "822617d258f84d3e01939d73b6c11e0f5473ed9e",
      "parents": [
        "cea11df038465ad15dc7d33c39a1bbbc3864aa99",
        "120480f17ae18bbe8c6fa7ec4854281fdf349b59"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Thu Feb 11 20:10:10 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 11 20:10:11 2016 +0000"
      },
      "message": "Merge \"Optimized the memory consumption and renamed PRN\" into nyc-dev"
    },
    {
      "commit": "120480f17ae18bbe8c6fa7ec4854281fdf349b59",
      "tree": "d92b4fedd451cd4f0978a9d730c40454507f8e73",
      "parents": [
        "d9eec15d84f4c58c4fd47b2c6b052d1e7b538779"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Sun Feb 07 18:08:19 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Thu Feb 11 11:29:40 2016 -0800"
      },
      "message": "Optimized the memory consumption and renamed PRN\n\nBug: 27058251\nChange-Id: I2309943b1a4e7565868ed0f247b84edc631fbd59\n"
    },
    {
      "commit": "237f3ef21c0df31f28066cfe423489fbb939b656",
      "tree": "dc2c7cb4d2d0f2ce6ca24e9a17e81f13b5e566cc",
      "parents": [
        "3a1356f3ff0f84d57cd669ff2648e46a919b94fe",
        "a2cbdfb33ca6e4e413b9424317b31abf9c6b4509"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Thu Feb 11 17:10:55 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 11 17:10:56 2016 +0000"
      },
      "message": "Merge \"Remove java.nio.channels.* classes without test coverage.\" into nyc-dev"
    },
    {
      "commit": "5c55babd64d0ba3bbed77739587594e22bfa3b52",
      "tree": "0ba17f6cfbf948deeca10aeb59131a6762e4b607",
      "parents": [
        "d538e38a00288fe6f97de9d867a2e1eba769d912",
        "3d4acbf5fbe74133b70b0bec51a387428f251ac1"
      ],
      "author": {
        "name": "Jeremy Joslin",
        "email": "jjoslin@google.com",
        "time": "Thu Feb 11 15:59:36 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Feb 11 15:59:36 2016 +0000"
      },
      "message": "Merge \"New systemapi to mark a wifi network as metered.\" into mm-wireless-dev\nam: 3d4acbf5fb\n\n* commit \u00273d4acbf5fbe74133b70b0bec51a387428f251ac1\u0027:\n  New systemapi to mark a wifi network as metered.\n"
    },
    {
      "commit": "a2cbdfb33ca6e4e413b9424317b31abf9c6b4509",
      "tree": "f19d0373c0458afef5e6c46fc663127407afed39",
      "parents": [
        "ed5c8f0216bf97e896936e2a2e24fc3fb18303a1"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Thu Feb 11 15:44:34 2016 +0000"
      },
      "committer": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Thu Feb 11 15:44:34 2016 +0000"
      },
      "message": "Remove java.nio.channels.* classes without test coverage.\n\nRemoved classes come from openJdk 1.7 and were never\nimplemented before. We lack a testing suite to verify that\nthey are working correctly. Those clasess might by\nre-added in further releases\n\nBug: 27117463\nChange-Id: Ia7554a9182507b9fa1c1b6db9573ab68cb641f36\n(cherry picked from commit 5fbc42d6a2baae747ddf660d5e64bc82b1795d4e)\n"
    },
    {
      "commit": "00a6750d37d899f7f7ae9210c82e2fdd875df7dd",
      "tree": "7b3a2aeab1ae2fc2ce74df87d7c8423b30362606",
      "parents": [
        "c343177bbac2f751b0e7708087924174034bf460",
        "8d4242c85d06fac67b46f0b9cb3462e0411e313c"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Thu Feb 11 10:23:38 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 11 10:23:39 2016 +0000"
      },
      "message": "Merge \"SocketImpl#getFileDescriptor shouldn\u0027t be public\" into nyc-dev"
    },
    {
      "commit": "8d4242c85d06fac67b46f0b9cb3462e0411e313c",
      "tree": "efdbae8b0380b31aa916dba5d53cc258998e72bf",
      "parents": [
        "738a2b67f16712fc36056c32eb5a652ce0c60f80"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Feb 08 16:54:35 2016 +0000"
      },
      "committer": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Thu Feb 11 10:18:48 2016 +0000"
      },
      "message": "SocketImpl#getFileDescriptor shouldn\u0027t be public\n\nIt\u0027s protected, as it was before openJdk switch. Added\nhidden public method getFD$ for tests.\n\nBug: 26689841\nChange-Id: I18f53356a108c1f7e0525c6f2f8130eac173e81e\n(cherry picked from commit ce41c4ee22dbf4d53c2ba5a21a63a0a3081bd732)\n"
    },
    {
      "commit": "c343177bbac2f751b0e7708087924174034bf460",
      "tree": "4cd46a444cfb7135b3122a585e0e0962c9cea13b",
      "parents": [
        "738a2b67f16712fc36056c32eb5a652ce0c60f80"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Feb 08 14:55:15 2016 +0000"
      },
      "committer": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Thu Feb 11 10:15:00 2016 +0000"
      },
      "message": "Remove public InetAddress#getAddressInternal()\n\nThis method shouldn\u0027t be public + can be replaced by\nthe #getAddress method\n\nBug: 26689841\nChange-Id: Ic0f9e0b03979d141c5648772ad94ba2c651ba6e7\n(cherry picked from commit 1f3148c27db5f80c50cf326cc898387ba9d00b9a)\n"
    },
    {
      "commit": "bfed18aa3ce7be44956f08344d183c5fdd9864b6",
      "tree": "d7f059ea18f08cfc3c105ebab14fe6a658777d7e",
      "parents": [
        "9dcb85a0a6972f452df6a684f9cb839b8a5e62a8",
        "a2a0c735ffeab4bd8413ff139b70bce8056bfd72"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Thu Feb 11 02:22:39 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 11 02:22:39 2016 +0000"
      },
      "message": "Merge \"TIF: Add Active Format Description to TvTrackInfo\" into nyc-dev"
    },
    {
      "commit": "7a598d3d800fc47b7c2f9300411edc0ef06da493",
      "tree": "6adbb560cd24043532c38327cc3024a584e11f4e",
      "parents": [
        "de0cc7f4d3b3c8abbb73f2a65a52fbd77001afeb"
      ],
      "author": {
        "name": "Jeremy Joslin",
        "email": "jjoslin@google.com",
        "time": "Wed Feb 10 10:09:29 2016 -0800"
      },
      "committer": {
        "name": "Jeremy Joslin",
        "email": "jjoslin@google.com",
        "time": "Wed Feb 10 17:20:22 2016 -0800"
      },
      "message": "New systemapi to mark a wifi network as metered.\n\nThe implementation will come after the wifi code base has stablized.\n\nBUG:27120794\nChange-Id: I6a8140dae45dcd7ec70ac0c51b9513b907a41b63\n"
    },
    {
      "commit": "7f036f8bce5c2f70b2cbc5e252220909bba69b5d",
      "tree": "4db5a1124bf667a84b48d98289233b8cca0098ed",
      "parents": [
        "7df9ff2a08fd4bbd9b2e734a357cffcf64675df9",
        "48aa86bd0b30815f4c02561f713bd33b032ef2b7"
      ],
      "author": {
        "name": "Jeff Davidson",
        "email": "jpd@google.com",
        "time": "Thu Feb 11 00:52:01 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 11 00:52:02 2016 +0000"
      },
      "message": "Merge \"Expose APIs to analyze UIDs in UserHandle/Process.\" into nyc-dev"
    },
    {
      "commit": "48aa86bd0b30815f4c02561f713bd33b032ef2b7",
      "tree": "4929769bfe7639c00d14df51549f72fe75ef2ed3",
      "parents": [
        "f61a847881ad251593e15e322dae39cc9bd1cd10"
      ],
      "author": {
        "name": "Jeff Davidson",
        "email": "jpd@google.com",
        "time": "Wed Feb 10 14:15:42 2016 -0800"
      },
      "committer": {
        "name": "Jeff Davidson",
        "email": "jpd@google.com",
        "time": "Wed Feb 10 15:20:33 2016 -0800"
      },
      "message": "Expose APIs to analyze UIDs in UserHandle/Process.\n\nClients of the NetworkStatsManager public APIs may get UIDs belonging\nto other users, and UIDs which don\u0027t actually represent applications.\nThese APIs allow clients to understand whether a given ID belongs to\nthe same user as themselves, and whether an ID represents an\napplication or something else (e.g. a system UID).\n\nChange-Id: Ia56d5891521ce98e5594c41da8f9d756819deb66\n"
    },
    {
      "commit": "5a982939d22b7fd3cb2a6ba107119b18f4904ca6",
      "tree": "ae44c09aca7ca98792135a089e2f6857ce0326cd",
      "parents": [
        "d9c4bc0c4db7a8b16d8ea0f58ed0615efc167f47"
      ],
      "author": {
        "name": "Mitchell Wills",
        "email": "mwills@google.com",
        "time": "Wed Feb 10 13:35:04 2016 -0800"
      },
      "committer": {
        "name": "Mitchell Wills",
        "email": "mwills@google.com",
        "time": "Wed Feb 10 14:37:27 2016 -0800"
      },
      "message": "Remove REPORT_EVENT_CONTEXT_HUB gscan option\n\nSince all scan results will now be reported to the context hub this flag\nis no longer needed.\n\nChange-Id: I21c157a31fe26169606f6f53e8e0ce44d57c5ca5\n"
    },
    {
      "commit": "a2a0c735ffeab4bd8413ff139b70bce8056bfd72",
      "tree": "aec79c69c4cad7fc49ce933e457b1d7c2cdb41b9",
      "parents": [
        "ebfc362370d2329cd55df0d4901e2ffd8e9390bd"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Wed Feb 10 14:03:18 2016 -0800"
      },
      "committer": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Wed Feb 10 14:03:18 2016 -0800"
      },
      "message": "TIF: Add Active Format Description to TvTrackInfo\n\nBug: 21277083\nChange-Id: Ided4ffcd2816e7bb11a81ef10f3b6e1499c6e89b\n"
    },
    {
      "commit": "4ecf78116e37f5460403f01d0d1e7c583393ee94",
      "tree": "b7de5485d363be8cb6264538f9be737a4805ff9a",
      "parents": [
        "f61a847881ad251593e15e322dae39cc9bd1cd10"
      ],
      "author": {
        "name": "Youngsang Cho",
        "email": "youngsang@google.com",
        "time": "Fri Feb 05 16:15:23 2016 -0800"
      },
      "committer": {
        "name": "Youngsang Cho",
        "email": "youngsang@google.com",
        "time": "Wed Feb 10 21:16:22 2016 +0000"
      },
      "message": "TIF: Add INPUT_ID field in RecordedProgram\n\nINPUT_ID can be retrieved from CHANNEL_ID. But, even if the channel\nis removed, recording should be playable. So INPUT_ID is needed.\n\nChange-Id: I7042a19758ce71e77ca2ae7613015e4d22f0d41f\n"
    },
    {
      "commit": "425c8bf2924f36a8f482d0c4786b7647b5e593d0",
      "tree": "09d6ac3c665983fb61687e984e6dee34ad8fff23",
      "parents": [
        "dcb68145236b9ed9f6ea6ee9456db2fca456df3c",
        "e3c11e842937f50f54c9d82363f33338dc9e261b"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Wed Feb 10 18:27:05 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 10 18:27:06 2016 +0000"
      },
      "message": "Merge \"TIF: Rename connect()/disconnect() and remove unnecessary methods\" into nyc-dev"
    },
    {
      "commit": "146d931ece7fc273311c049067742bab40a9999a",
      "tree": "f203c72a14a125739d97234cb2f66dcd5a9cf6da",
      "parents": [
        "ff25528a9beaa33a4effbe90c3d3fc259c0d3aa8",
        "81afbcdbf96c687b61ed53170e1654f4f8ea5b15"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Wed Feb 10 14:10:23 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 10 14:10:24 2016 +0000"
      },
      "message": "Merge \"Allow apps to know what users think of their notifications.\" into nyc-dev"
    },
    {
      "commit": "e3c11e842937f50f54c9d82363f33338dc9e261b",
      "tree": "c16b2253198d96d258788dae221e136a1772d5ae",
      "parents": [
        "0489c1459efdfd65586d4a70bed2e11b308d7fd2"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Mon Feb 08 23:18:49 2016 -0800"
      },
      "committer": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Tue Feb 09 19:18:29 2016 -0800"
      },
      "message": "TIF: Rename connect()/disconnect() and remove unnecessary methods\n\nBug: 26969670\nChange-Id: Iee7d1af2eecc11bb28a8d9d7e377b4754a37095c\n"
    },
    {
      "commit": "ea46bb2cbfa301ea3d5c38968636c1c1435ad47d",
      "tree": "39d0e8c7b65934887872176914b3751f4efc7e5f",
      "parents": [
        "4f15f2ba67b6bc0ddad53b42235ac86d1079bbba",
        "8d8c7477746c357d54f586fc92e8d422a4fc6441"
      ],
      "author": {
        "name": "Shawn Willden",
        "email": "swillden@google.com",
        "time": "Tue Feb 09 22:57:23 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 09 22:57:24 2016 +0000"
      },
      "message": "Merge \"Add attestation API to Android KeyStore.\" into nyc-dev"
    },
    {
      "commit": "81afbcdbf96c687b61ed53170e1654f4f8ea5b15",
      "tree": "18d86025fe5ac36afb41ba506b94afa88a28cae4",
      "parents": [
        "b1a235f9524b71126a9768571ad0b0a7fe0b304c"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Tue Feb 09 14:54:08 2016 -0500"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Tue Feb 09 14:54:08 2016 -0500"
      },
      "message": "Allow apps to know what users think of their notifications.\n\n- App wide blocking\n- Topic importance\n\nChange-Id: I9026e5c26c5dbcab1c86c385beede891f961933f\n"
    },
    {
      "commit": "7364905303de42141f7bf72eeb3ba0cac7cc7370",
      "tree": "bba18a62b3023041a25dc3f9563a0c560d235bce",
      "parents": [
        "75827b2fb626d23ed4a716dd1d9b35d6e215b7ce",
        "910beb8f5d9042163e2ad0dbb744d9f147db9604"
      ],
      "author": {
        "name": "Andres Morales",
        "email": "anmorales@google.com",
        "time": "Tue Feb 09 19:00:31 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 09 19:00:32 2016 +0000"
      },
      "message": "Merge \"updates to FrameStatsObserver API\" into nyc-dev"
    },
    {
      "commit": "910beb8f5d9042163e2ad0dbb744d9f147db9604",
      "tree": "83f2bdb523fa6f78ac322b5eca1f0bc332e2fcd2",
      "parents": [
        "95728a5db6595e473acf8f428f238afc2fdbbe80"
      ],
      "author": {
        "name": "Andres Morales",
        "email": "anmorales@google.com",
        "time": "Tue Feb 02 16:19:40 2016 -0800"
      },
      "committer": {
        "name": "Andres Morales",
        "email": "anmorales@google.com",
        "time": "Tue Feb 09 10:40:01 2016 -0800"
      },
      "message": "updates to FrameStatsObserver API\n\n- Rename to FrameMetrics to avoid collision with existing\n  android.view.FrameStats class\n- Make FrameMetricsObserver implementation detail,\n  exposing FrameMetricsListener interface as public API\n  and wrapping in FrameStatsObserver to maintain state\n- Remove dropped frame count call, in favor of passing as\n  parameter to callback method.\n- Move away from raw timestamp access in favor of Metric IDs\n  which represent higher-level, more stable stages in a frame\n  lifecycle and match the categories exposed in the onscreen\n  bars.\n- Support many-to-many Window\u003c-\u003eFrameMetricsListener relationship\n\nChange-Id: I00e741d664d4c868b1b6d0131a23f8316bd8c5c2\n"
    },
    {
      "commit": "2d291d89f957495917071282ac0afce9b65c5e26",
      "tree": "5a784b72695aa39ddcf9bb7e84d6b8bd3c58fd2d",
      "parents": [
        "ccdd08d37cc2b95da22941cc8fe80488d5d498e5"
      ],
      "author": {
        "name": "Selim Gurun",
        "email": "sgurun@google.com",
        "time": "Fri Feb 05 17:50:53 2016 -0800"
      },
      "committer": {
        "name": "Selim Gurun",
        "email": "sgurun@google.com",
        "time": "Tue Feb 09 10:20:21 2016 -0800"
      },
      "message": "Introduce a use32bitAbi flag\n\nBug: 26874366\n\nOn Multiarch apps, it might be necessary to prioritize 32bit Abi ahead\nof 64bit ones. The use32bitAbi flag enables this.\n\nThis CL also reverts the public api changes in  I2c1fd1d036efe72b28b5fe996416df69a583959f and Ie3ecea6d84e2cb1522e736a21c3a3a24ac62eb27. Previously\nthe same functionality was provided using a raw abi string that\nutilized cpuabioverride flag.\n\nChange-Id: Idce3cbfedd11ef9079ce8a2901e69d30b1cf9ef4\n"
    },
    {
      "commit": "3fcec1a8dcfd734c8d22f72d4cd800afbb08b862",
      "tree": "e857a10838826c6f6827f98baad74f6f097ec57c",
      "parents": [
        "eb33c0a53fc38470b52a2a021df06a9bcad15207"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Jan 18 16:43:38 2016 -0800"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Feb 09 10:17:38 2016 +0000"
      },
      "message": "Add java.util.function APIs\n\nBug: 26814204\n(cherry picked from commit 311a97e7f41c494bc355f5d77adc276e2a400970)\n\nChange-Id: I3fab2b12676bd1460553b4cb45b1ff602f6c09c1\n"
    },
    {
      "commit": "2a061b5bcfb92be2829f6fe9a6d86352193752e3",
      "tree": "09b23db0413dedc230ce4fd3d00faab8b03eba79",
      "parents": [
        "93f04f89202d269fbb38c6f2ffacc3fa01728bbc",
        "4eee6a73e476cd2d82a69f3a535628901047f140"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Tue Feb 09 02:14:11 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 09 02:14:12 2016 +0000"
      },
      "message": "Merge \"TIF: Allow the application to indicate a TV program to record\" into nyc-dev"
    },
    {
      "commit": "c5c898640fd79562a3f278dbe825b39b0b65c7f7",
      "tree": "9227f8b068e0d7a42b660e3740e32558973f260b",
      "parents": [
        "bdadd644a8873ca658775a6bf6b2b0c7838e1d9d",
        "03a6b1835060b6c2082ea231fb1ad539aefd916e"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "weiwa@google.com",
        "time": "Tue Feb 09 01:14:34 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Feb 09 01:14:34 2016 +0000"
      },
      "message": "Merge \"Enable RTT Responder Role (1/4).\" into mm-wireless-dev\nam: 03a6b18350\n\n* commit \u002703a6b1835060b6c2082ea231fb1ad539aefd916e\u0027:\n  Enable RTT Responder Role (1/4).\n"
    },
    {
      "commit": "03a6b1835060b6c2082ea231fb1ad539aefd916e",
      "tree": "32d443d13cfb8b7a1cabb9c9f6edf82e461a68e4",
      "parents": [
        "5f3dec374fac97365ec95ec407a1cffc2c3907c9",
        "564527dc5af7e1a61196273f4e02835924a4a14f"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "weiwa@google.com",
        "time": "Tue Feb 09 01:07:33 2016 +0000"
      },
      "committer": {
        "name": "Android Partner Code Review",
        "email": "android-gerrit-partner@google.com",
        "time": "Tue Feb 09 01:07:34 2016 +0000"
      },
      "message": "Merge \"Enable RTT Responder Role (1/4).\" into mm-wireless-dev"
    },
    {
      "commit": "c31539869455f5bfb595a3b4b2001ca6a50a098f",
      "tree": "2e267dbbd9fe115f17415e0681adecf4e39fb972",
      "parents": [
        "087d7b7c9cc071ffa5bc0dfbf5b5565f99cd95fe",
        "f82f746903729314e09ebe0e05b0c97d33a876c7"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Feb 08 23:13:19 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 08 23:13:19 2016 +0000"
      },
      "message": "Merge \"Support for Bundle in AudioAttributes\" into nyc-dev"
    },
    {
      "commit": "4eee6a73e476cd2d82a69f3a535628901047f140",
      "tree": "9264462de23a4c5ed41d3ad6ab3b3089dd846340",
      "parents": [
        "abda420b9d2959776093230cd2e157a6080f2f64"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Sat Feb 06 11:11:35 2016 +0900"
      },
      "committer": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Mon Feb 08 14:51:52 2016 -0800"
      },
      "message": "TIF: Allow the application to indicate a TV program to record\n\nBug: 26962040\nChange-Id: I2f062a4621c8a9a6765543826ba2cd607f1468d4\n"
    },
    {
      "commit": "c08268e647f89f8ddfd9c6fb1f6ac4f99b13b9cf",
      "tree": "a464853444ea7a61abac1102f8ee647338d169d3",
      "parents": [
        "6af1d75a0c1cf814404e5142c3a7932ff9deade9"
      ],
      "author": {
        "name": "Amit Mahajan",
        "email": "amitmahajan@google.com",
        "time": "Thu Feb 04 18:08:30 2016 -0800"
      },
      "committer": {
        "name": "Amit Mahajan",
        "email": "amitmahajan@google.com",
        "time": "Mon Feb 08 22:20:03 2016 +0000"
      },
      "message": "Make permission RECEIVE_EMERGENCY_BROADCAST public.\n\nIt is required to receive intent SMS_EMERGENCY_CB_RECEIVED_ACTION\nwhich is already public.\n\nBug: 24914029\nChange-Id: I2d5461fcedb2cb347c818ab6f94577008f6af242\n(cherry picked from commit 45d9b36fc6a609893022b812084987cda3e3717d)\n"
    },
    {
      "commit": "6af1d75a0c1cf814404e5142c3a7932ff9deade9",
      "tree": "898dc55da07faead23beb91b5702236df75200a0",
      "parents": [
        "23b588c7b3b1a817e35bf3e6916cd99ab1c58a2c",
        "43cd1bcb10930c3e948f3d52278a986597672b29"
      ],
      "author": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Mon Feb 08 22:07:04 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 08 22:07:05 2016 +0000"
      },
      "message": "Merge \"Add system APIs for A/B update.\" into nyc-dev"
    },
    {
      "commit": "8d8c7477746c357d54f586fc92e8d422a4fc6441",
      "tree": "4f045715493d846d7b08b393c13fee3c312fa689",
      "parents": [
        "d1bbdeb86e5b6b83465440947dffc89de46a3f93"
      ],
      "author": {
        "name": "Shawn Willden",
        "email": "swillden@google.com",
        "time": "Tue Feb 02 08:27:39 2016 -0700"
      },
      "committer": {
        "name": "Shawn Willden",
        "email": "swillden@google.com",
        "time": "Mon Feb 08 19:29:54 2016 +0000"
      },
      "message": "Add attestation API to Android KeyStore.\n\nBug: 22914603\nChange-Id: I7c6162dc7a390aa48a2542494780959b01c23bd4\n"
    },
    {
      "commit": "f82f746903729314e09ebe0e05b0c97d33a876c7",
      "tree": "eb1b12948a5e2ff4ddfbddb4a0c6dfa96ba05527",
      "parents": [
        "44ba79e47d6db54e5501f994880fa09eb880c185"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Feb 05 15:20:35 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Feb 08 19:24:19 2016 +0000"
      },
      "message": "Support for Bundle in AudioAttributes\n\nBug 25449464\n\nChange-Id: I99cdfd4589e3161b52620e439ba993ce21d256b4\n"
    },
    {
      "commit": "44ba79e47d6db54e5501f994880fa09eb880c185",
      "tree": "4d20af401f2ee2a8d69f145260a0fab1ea612ce8",
      "parents": [
        "8585ed66b947ef30d6a43f0bb91885ed0c5ebfb4"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Feb 04 16:20:37 2016 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Feb 08 19:10:44 2016 +0000"
      },
      "message": "Permit setRetainInstance(true) on nested fragments, framework edition\n\nSave arbitrarily nested fragments across config changes as\nnonconfiguration objects. This permits the use of retain-instance\nchild fragments as arbitrary opaque dependencies within other\nfragments.\n\nChange-Id: Ia6640b76cfcf7ec28ba252628957a0c14863e957\n(cherry picked from commit 7466be66263d5ebffb786ea402d9ed6e36c254f0)\n"
    },
    {
      "commit": "8585ed66b947ef30d6a43f0bb91885ed0c5ebfb4",
      "tree": "d4885fd07695473f961aad4c1baebd50a4bde77b",
      "parents": [
        "2af189a0a7962501b808cd50499d978a7cd10d81"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Feb 04 15:38:20 2016 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Feb 08 19:00:52 2016 +0000"
      },
      "message": "FragmentTransaction.commitNow, framework edition\n\nOffer commitNow and commitNowAllowingStateLoss methods on Fragment for\nuse by encapsulated components using fragments as implementation\ndetails. This can help prevent unexpected ordering side effects at the\napp level when a call to a library method wants to commit and\nimmediately initialize a fragment as an implementation detail.\n\nNote that this change still does not permit reentrant FragmentManager\noperations. It is still an error to add/remove/change fragments in the\nsame FragmentManager while a fragment transaction is being executed.\n\nHave the commonly used ViewPager adapters use commitNow instead of\nexecutePendingTransactions.\n\nChange-Id: Ia37a871234a287423063f0c2c3e4c93d69116cad\n(cherry picked from commit f6b30662f87f7339d0d3946dcf71e930c2fead9b)\n"
    },
    {
      "commit": "43cd1bcb10930c3e948f3d52278a986597672b29",
      "tree": "019dc43ec846dcf261e75e1a4bfdf5454fcfdfbb",
      "parents": [
        "b7289330e1ae201691dc5b2aa2b6b3a65795e4cb"
      ],
      "author": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Mon Feb 08 09:51:38 2016 -0800"
      },
      "committer": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Mon Feb 08 10:38:35 2016 -0800"
      },
      "message": "Add system APIs for A/B update.\n\nAdd android.os.UpdateEngine and UpdateEngineCallback classes that\ncommunicate with the update engine via binder APIs for A/B update.\n\nBug: 26695366\nChange-Id: I2471858d28df5443bc0b56d9a20281ccebde4484\n"
    },
    {
      "commit": "d560729ce3a6f3d51c03d39768815b4c49f7a8f4",
      "tree": "d3de20d21ebc2aefc3d0390f4778667df315aab6",
      "parents": [
        "c3f42c102422f70f5bbe67105e16515ce9c306a3"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Fri Feb 05 15:25:58 2016 -0500"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Mon Feb 08 15:20:02 2016 +0000"
      },
      "message": "Update DND visual interruption choices.\n\nChange-Id: I7050264839c566dcef1dd01d155dda694a8d1ec0\n"
    },
    {
      "commit": "d48935879acf8718bc257a160d64370289ffb9f4",
      "tree": "5e3ffeef19b4519d1f0f081c412d3e0982d2322d",
      "parents": [
        "e35bde5291ed986dfe4d202a600a19154dae04ed"
      ],
      "author": {
        "name": "Abhijith Shastry",
        "email": "ashastry@google.com",
        "time": "Thu Feb 04 17:28:03 2016 -0800"
      },
      "committer": {
        "name": "Abhijith Shastry",
        "email": "ashastry@google.com",
        "time": "Fri Feb 05 15:06:56 2016 -0800"
      },
      "message": "Carrier config to support overriding block suppress duration after emergency contact.\n\nBUG: 26989170\nChange-Id: I6d8f13dd4f2b69730826cc8440a22c7154255ac8\n"
    },
    {
      "commit": "10c63d8a12caf5117524799efea95120f8b0845b",
      "tree": "5178f3d866eb9ed5d51843c23ce131ab2ab26365",
      "parents": [
        "046cc21b7569e25508bf71fca4fb6d36c893b27b"
      ],
      "author": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Fri Feb 05 14:55:35 2016 -0500"
      },
      "committer": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Fri Feb 05 14:55:35 2016 -0500"
      },
      "message": "move assistant to system API\n\nBug: 26693581\nChange-Id: I7e29b8521e2c33683b8032e63da734cfde1dfcc9\n"
    },
    {
      "commit": "3b543ca859989af2ba9d1bc7b5393dae7ffed874",
      "tree": "f8af1fa8f161be57b2615704fece30b3305da626",
      "parents": [
        "c441856bb6c5712efab9d5ef422c95210884a1d8"
      ],
      "author": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Fri Feb 05 10:49:22 2016 -0500"
      },
      "committer": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Fri Feb 05 10:49:22 2016 -0500"
      },
      "message": "Revert \"move assistant to system API\"\n\nThis reverts commit c441856bb6c5712efab9d5ef422c95210884a1d8.\n"
    },
    {
      "commit": "c441856bb6c5712efab9d5ef422c95210884a1d8",
      "tree": "0f3fd211bb93a73c1381ac9cfa8061523ed1b402",
      "parents": [
        "1fc4a277625e62c886f84dee68f2a809928907a5"
      ],
      "author": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Thu Jan 28 15:38:41 2016 -0500"
      },
      "committer": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Fri Feb 05 08:22:18 2016 -0500"
      },
      "message": "move assistant to system API\n\nBug: 22455414\nChange-Id: I2fbb37fceef3058bc70d540a58fdcd8af5e7a76d\n"
    },
    {
      "commit": "0cc5a9d8f66e84a181b54bfea2f257ee84f86de3",
      "tree": "0f389ac62cf796418b8581c0d1a62a6401f53149",
      "parents": [
        "44278472d84f2bf3c48dcd7e21cd4b97525d7efd"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Fri Feb 05 11:38:26 2016 +0900"
      },
      "committer": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Fri Feb 05 12:52:17 2016 +0900"
      },
      "message": "MediaBrowser: Add extra lookup keys to specify media items to retrieve\n\nBug: 25821318, Bug: 25153123, Bug: 25153113\nChange-Id: I50cc99439a4a6dd714cf7bfd0950e2583554668a\n"
    },
    {
      "commit": "fee44846376c212114223fc4259382921e6dca7a",
      "tree": "71e072708d89e047eea7cca2c920ee45a9a6cb5d",
      "parents": [
        "b013cfec0b902d4a2836a1a95f76a3e29d1c6630"
      ],
      "author": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Thu Feb 04 15:24:24 2016 -0800"
      },
      "committer": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Thu Feb 04 15:44:03 2016 -0800"
      },
      "message": "Various LocaleList cleanups\n\n- Remove the LocaleList#getPrimary() API. It had become confusing\n  after locale negotiation was completely implemented. For example,\n  it could create the confusion that calling getPrimary() on the\n  default locale list would provide the default locale, etc.\n- Use the adjusted locale list from LocaleList.getAdjustedDefault()\n  in Paints created with no locale list provided.\n- Change LocaleList#get() to treat out of bound indexes from both\n  negative indexes and too large indexes the same way.\n\nBug: 26984092\nBug: 26193251\nBug: 26834387\nChange-Id: I75f77aea6b75e38793ed8477e5e5a4420d5e6d85\n"
    },
    {
      "commit": "b6aae68912984d8da9063c2351c22361be37756f",
      "tree": "a6d0f8aa069567868b0ab6ac061281a1d9ce314a",
      "parents": [
        "fba5a3b6da329178a6e964c5cf386a3dfd8011d6",
        "2b11b688b841a00afe5eda8bda02409172751318"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Thu Feb 04 18:56:24 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 04 18:56:24 2016 +0000"
      },
      "message": "Merge \"api: Un-@hide new annotation APIs from java 8\""
    },
    {
      "commit": "cc83ea79673c472ce0db3c72ef4390cb8ef60602",
      "tree": "44423d8827620443005982b58c4edcfc3aa743f5",
      "parents": [
        "62d59cc4a675c9db66e9e701f7ba3ad7724034ee",
        "278fb3b35920cd7d5ba4ce3a4c24776e89007bbd"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Feb 04 17:41:19 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 04 17:41:19 2016 +0000"
      },
      "message": "Merge \"Make flags related for \"external services\" public\""
    },
    {
      "commit": "5f5d707bad1ac89d2d7d04cdc0f20b9de14a604b",
      "tree": "e08d6baae625cf1c0913ce0447493705d0882c25",
      "parents": [
        "95f6280bf13272b0dd345ef8f07f956710c02791"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Jan 27 10:41:22 2016 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Feb 04 17:20:13 2016 +0000"
      },
      "message": "Defined an intent to let apps launch the Data Saver settings screen.\n\nBUG: 26451391\nBUG: 26820898\nChange-Id: Ie9dbe2d08d362aa548e385967d101faafb87c9b7\n"
    },
    {
      "commit": "49d34d995b791f148acfa5779bc28d79e6619168",
      "tree": "fc3c4412dfef0d47183a981b734a3085fb133c16",
      "parents": [
        "14ea90e8241803e37326f67c7ae8c7a12d47d397",
        "b7b1db11d6098c45d6a46abb1331862a2af7b097"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Feb 04 13:11:00 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 04 13:11:00 2016 +0000"
      },
      "message": "Merge \"Revert \"Add java.util.function APIs\"\""
    }
  ],
  "next": "b7b1db11d6098c45d6a46abb1331862a2af7b097"
}
