)]}'
{
  "log": [
    {
      "commit": "5f3a05c15fa636e911a646e35765ba8bbed7d5e1",
      "tree": "465ed3e6f9aa18a5d0cab1a5f686ca35d3310d8d",
      "parents": [
        "39cb8895a529d6a53bc8c7f0320da1ea03d21681"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Fri Jan 27 16:51:03 2017 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Fri Jan 27 16:51:03 2017 -0800"
      },
      "message": "Primary navigation fragments\n\nPort of I82cd22cda6e9ee22fe293c36859e99f49d36a129 from frameworks/support\n\nAdd API to track the \"primary navigation fragment\" for a\nFragmentManager. This allows designating one active fragment in a\nFragmentManager as the intended nested recipient of navigation actions\nsuch as popping the back stack.\n\nThe FragmentManager popBackStack methods will now delegate to the\nchild FragmentManager of the current primary navigation fragment first\nbefore trying to pop its own back stack. This can only happen if a\nback stack transaction id or back stack entry name is not provided to\nthe pop operation, as these names and ids are namespaced to each\nindividual FragmentManager.\n\nPrimary navigation fragments are set as part of a FragmentTransaction\nand follow the associated expectations. Transactions added to the back\nstack will be fully reversed when popped, restoring the previous\nprimary navigation fragment for the FragmentManager. If a primary\nnavigation fragment is removed from the FragmentManager, the primary\nnavigation fragment will be set to null.\n\nBug: 30596279\nTest: CTS\nChange-Id: Ied7c1515f27142d6f4cd523f16eb35d38a2a2380\n"
    },
    {
      "commit": "fc8f82bc6b587bddd2aeaddc54c1ea3f598bb9c3",
      "tree": "902ff2f3a3bb7dbd382424d5e791ead00e3b56d0",
      "parents": [
        "298c87820922aec2da5006bb233c87a3fc2bb507"
      ],
      "author": {
        "name": "Andrii Kulian",
        "email": "akulian@google.com",
        "time": "Thu Jan 26 13:17:27 2017 -0800"
      },
      "committer": {
        "name": "Andrii Kulian",
        "email": "akulian@google.com",
        "time": "Fri Jan 27 00:14:06 2017 -0800"
      },
      "message": "Allow showing content on virtual displays when locked\n\nThis adds new flag to virtual display that changes its\nbehavior when keyguard is shown, but can be dismissed without\nentering credentials. This can be applied only to private\nvirtual displays.\n\nBug: 34280365\nTest: android.server.cts.ActivityManagerDisplayTests\nTest: #testVirtualDisplayHidesContentWhenLocked\nTest: #testShowWhenLockedVirtualDisplay\nTest: #testShowWhenLockedPublicVirtualDisplay\nChange-Id: I9c19d36295e62f59bd1db1352af707d54ea51667\n"
    },
    {
      "commit": "e682445698cadccbb60c4cd797cf1a65167aa399",
      "tree": "7110b331ff6f68a40cdab58985b0aea68eef8df8",
      "parents": [
        "6ba5ed322c04f260c51d58f2e49c6189b672f2d3",
        "87af2d859644a28d7c49adbac8e963991adefefc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 27 03:46:31 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 27 03:46:36 2017 +0000"
      },
      "message": "Merge changes from topic \u0027session_refactoring\u0027\n\n* changes:\n  Adds autofill save ui\n  Moar AutoFill Framework refactoring...\n"
    },
    {
      "commit": "416903e7c456bbba14776602819c0f0011b6c75d",
      "tree": "72cdd5e074c80321a8ec2ab9f66b49ad4a421563",
      "parents": [
        "8dc7ccc6e12e3e8f9271a07719c2dfeeb08a08e1",
        "6112860c5c0bc5ed49c3ecece6229a0db28ab80c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 27 01:34:36 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 27 01:34:40 2017 +0000"
      },
      "message": "Merge \"Unhide ApplicationInfo.volumeUuid.\""
    },
    {
      "commit": "6112860c5c0bc5ed49c3ecece6229a0db28ab80c",
      "tree": "18167c1c4bc0011ea41a700905fc0ed369e7584f",
      "parents": [
        "9e77aefe9ce2c3caa8c0daebf21c86088e10b951"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 26 17:07:35 2017 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 26 17:08:40 2017 -0700"
      },
      "message": "Unhide ApplicationInfo.volumeUuid.\n\nApps need it to interact with the new StorageStatsManager APIs.\n\nTest: builds, boots\nBug: 34723750\nChange-Id: I274d5bd425cd401e10647959ba18f9956628d810\n"
    },
    {
      "commit": "bd00fef41ce38d2c711bd4151997c1cd8964b712",
      "tree": "947661d21d70abb2dd45917e3f8d1b0b054f2616",
      "parents": [
        "6ee80f3a652358e8297102ea855105aea05bedf8"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Jan 24 15:10:26 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 26 15:39:59 2017 -0800"
      },
      "message": "Moar AutoFill Framework refactoring...\n\n* Encapsulated application-level auto-fill logic on AutoFillSession.\n  Currently, Activity.java directly manages the IAutoFillCallback binder\n  object used to auto-fill its views, but this logic need to be\n  extended so Views can use it to draw the auto-fill bar.\n\n* Pass auto-fill id and boundaries to requests\n  So AutoFillUI can display its affordance in the right places.\n\n* Uses a new auto-fill id on View (instead of reusing accessibility\u0027s).\n  That allows moving the logic on whether a new request should be made or\n  the existing UI moved to the service side.\n\n* Split service methods in 2, for shell cmd and app\n  And applied the right permission check on both.\n\n* Removed CancelationSignal from onSaveRequest()\n  Since it\u0027s not really needed.\n\n* Etc...\n  ¯\\_(ツ)_/¯\n\nBUG: 34637800\nBUG: 31001899\nTest: CtsAutoFillServiceTestCases passes\nTest: manual verification\n\nChange-Id: Ibd0cb2cfff6d0f6bb6b697a423ed5e89df687b82\n"
    },
    {
      "commit": "17bb1b77f73dcfd4c23c6389602682965e9035a1",
      "tree": "23d75e5c8a518473b9865151c5f7a21820ae30b2",
      "parents": [
        "6c72a326bb944840bdf587a11dc4ce54855c821e",
        "e3511767169357a1409119b5666c62d50e005583"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 22:58:10 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 22:58:15 2017 +0000"
      },
      "message": "Merge \"Add a client chain to WifiEnterpriseConfig\""
    },
    {
      "commit": "33d9bc529e4969444aca821190f16b565a7726a9",
      "tree": "121dee5ff9598f570905ee201a0071506ed2da08",
      "parents": [
        "4e231da7fed3d2d590f6321e01169d680db19612",
        "7f7372ae2abeecb564d426ec3efbfa039c797885"
      ],
      "author": {
        "name": "Sunny Goyal",
        "email": "sunnygoyal@google.com",
        "time": "Thu Jan 26 22:22:50 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 22:22:55 2017 +0000"
      },
      "message": "Merge \"Adding AppWidgetManager.isRequestPinAppWidgetSupported\""
    },
    {
      "commit": "be3c77bfc6c4fc4b742bde780875089cf0c6db66",
      "tree": "ffcfaa26c1928183da19c365aad21470489ed851",
      "parents": [
        "eea27893c19a0bae1ff5d8bbf6c049cec22f6d85",
        "434602faa9284eee9f3559f6aa8b1ee4e6ba4bee"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Jan 26 21:14:55 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 21:14:59 2017 +0000"
      },
      "message": "Merge changes I50bf7c36,Ibb40ed39\n\n* changes:\n  TIF: Add types and \"watch next\" types for programs\n  TIF: Add more fields needed for new content recommendation\n"
    },
    {
      "commit": "e3511767169357a1409119b5666c62d50e005583",
      "tree": "e596d0d180a325ff515c2c48a7ba1e12bedff518",
      "parents": [
        "d3902a342e3e152e82f4d86e109ce88ed4da08ec"
      ],
      "author": {
        "name": "Paul Stewart",
        "email": "pstew@google.com",
        "time": "Tue Jan 24 19:36:05 2017 -0800"
      },
      "committer": {
        "name": "Paul Stewart",
        "email": "pstew@google.com",
        "time": "Thu Jan 26 10:37:41 2017 -0800"
      },
      "message": "Add a client chain to WifiEnterpriseConfig\n\nAdd a list of supporting certificates to be presented in the process\nof presenting client credentials.\n\nBug: 34688653\nTest: Compile, unit tests\nChange-Id: I6afd8baf67312e8ddaaeefd26f30dacc51aa33bb\n"
    },
    {
      "commit": "434602faa9284eee9f3559f6aa8b1ee4e6ba4bee",
      "tree": "55c84b1cf53cfc3de49cbffe4c9185f182065939",
      "parents": [
        "523415e814a04e2012de2ebc22028c422c5b913f"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Wed Jan 25 17:32:17 2017 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Jan 26 10:08:48 2017 -0800"
      },
      "message": "TIF: Add types and \"watch next\" types for programs\n\nTest: build\nBug: 34160270\nChange-Id: I50bf7c36e33cd24bf80785150a2858cfec683546\n"
    },
    {
      "commit": "1457cdcca56985d8aa09846ad53ee459997ea56e",
      "tree": "2d7095e0f3562ae2eddc2e5415cf2142aa789226",
      "parents": [
        "e8ce181efbc7f9306754d840d2f496f91e867dbb",
        "4a2a0399de1c795d4135dc012d343e60816ba409"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 18:04:44 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 18:04:47 2017 +0000"
      },
      "message": "Merge \"wifi: WifiManager API change for supporting Passpoint Release 2\""
    },
    {
      "commit": "523415e814a04e2012de2ebc22028c422c5b913f",
      "tree": "a897658df9f056c4d67a879c11abf7d0abaea87b",
      "parents": [
        "5841a983e8e7d9d4f8aae6186972b3f686fde3a9"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Wed Jan 25 15:09:49 2017 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Jan 26 08:58:50 2017 -0800"
      },
      "message": "TIF: Add more fields needed for new content recommendation\n\nTest: build\nBug: 34160270\nChange-Id: Ibb40ed39573049ace180ae319cebe96222f84b00\n"
    },
    {
      "commit": "60eef134af95b6fe17ec272f9bc123c221b9d42e",
      "tree": "0391873c3054469adce5c3148f6f13080b13b20b",
      "parents": [
        "132dffbc83b2dd91218a8e82a4df9e4d2da128ac",
        "5caa276305e3f6807959cbc938c42048c74153bc"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Thu Jan 26 14:15:13 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 14:15:16 2017 +0000"
      },
      "message": "Merge \"New constructor for Notification.Builder takes a channelId.\""
    },
    {
      "commit": "10dcfd36880c1f9f7db631081d1dc40aed818625",
      "tree": "412b4788e3214636599efee017462d38aea782a2",
      "parents": [
        "60d820b05069778db60c1f1af8d4704261961c67",
        "4bf00a2ca130766ceebc451b7c912ade26b5a245"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 08:30:10 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 08:30:12 2017 +0000"
      },
      "message": "Merge \"Add an intent that asks the launcher to make a channel browsable.\""
    },
    {
      "commit": "60d820b05069778db60c1f1af8d4704261961c67",
      "tree": "b019f7ad704f42bcd0660184bfed6cf0a7553546",
      "parents": [
        "7b5bbb5509748c06ed5225b1c8458d74e81a7f31",
        "61c74c6a4b0e30a3bd618cdf8c7d7e85edf139d9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 08:21:58 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 08:22:01 2017 +0000"
      },
      "message": "Merge \"media: Add new MediaMuxer constructor that takes FileDescriptor.\""
    },
    {
      "commit": "35089c466ea15faaf8ab41697ed49590f6fbd447",
      "tree": "025aa4287725985b2928251454ac7898328942d8",
      "parents": [
        "bcf3b70371a98878bcad088914a886df4217f555",
        "4db5dedb76ad86692361b0f9b30880eafc5ec3a7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 07:39:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 07:39:51 2017 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Remove View.setTooltip/getTooltip\"\"\""
    },
    {
      "commit": "bcf3b70371a98878bcad088914a886df4217f555",
      "tree": "cb7413ab86c061649ad63d0db699522374e2b070",
      "parents": [
        "0e4bddb89629b621577da49f2c3a56b61a8796ad",
        "aef2513c7157a28236d097a81fe74d7ba6b710c9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 07:35:28 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 07:35:33 2017 +0000"
      },
      "message": "Merge \"Adding an api for apps to check whether they can install apps\""
    },
    {
      "commit": "eb30016ad478f0ee0f4afbeca78aacbb38ab9c5b",
      "tree": "1ffe7b8803a88cd4e52da85be10f449e55960a07",
      "parents": [
        "d640737329f7265013422e7ff9d057f45672f30c",
        "3787de16d24001eeb452e1c711d4290a396e67c9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 07:22:21 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 07:22:24 2017 +0000"
      },
      "message": "Merge \"Implement pointer capture API\""
    },
    {
      "commit": "da57f6b420897bd1456ee537940ef5cab19e46ae",
      "tree": "9f48cde0ee9b14a62c19c599201ff0cc0a43f67d",
      "parents": [
        "a8b207c53122414c4ddc9f3a03b77acf2e82dfa2",
        "58266016c6672a319d9c8b3d7eaac310501c6a43"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 06:00:53 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 06:00:56 2017 +0000"
      },
      "message": "Merge \"TIF: Add more fields for guide view on launcher\""
    },
    {
      "commit": "24c03cabb860c8e766bdfa2b91dac2734dd0938e",
      "tree": "b76d227fd1c47fbb5a4262e2297f4b8f112b83bb",
      "parents": [
        "cefb76ad2e0ae77fb841533fb57ee9bb0b366e58",
        "d2577a7c9e172a61bceea8d69796461022491c67"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Jan 26 04:50:41 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 04:50:43 2017 +0000"
      },
      "message": "Merge \"Update IS_OMTP_VOICEMAIL value to \"is_omtp_voicemail\" in API\""
    },
    {
      "commit": "de3b86e73e42ef4d1614054d073eb212320a6296",
      "tree": "258d621159742f469cb98da5dd5afc866ebe2a04",
      "parents": [
        "e3d08aebdcf2ab939b9f9e8c65105594db7dd720",
        "59e152e92e6ebb71bab974973ce29b4f8d11f7cf"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 04:49:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 04:49:31 2017 +0000"
      },
      "message": "Merge \"Add notification channel groups.\""
    },
    {
      "commit": "d2577a7c9e172a61bceea8d69796461022491c67",
      "tree": "bdd8a010c655fb678c63f6c416aae1be423cf774",
      "parents": [
        "d1b6dcbea63c688650d13d77156526581db27630"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Jan 25 20:38:32 2017 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Jan 25 20:39:13 2017 -0800"
      },
      "message": "Update IS_OMTP_VOICEMAIL value to \"is_omtp_voicemail\" in API\n\nTest: m -j32 checkbuild docs\nChange-Id: I03b229ab8e5f0e16459a8f3e4a89bd1421ff637e\n"
    },
    {
      "commit": "51a403525f5305d02029d86568c17d58f19ca870",
      "tree": "e119d41d1fda68b9329ecbf24b7cd0203557fbcc",
      "parents": [
        "b922d1f9e68a0759cab586c8e1e28ab0e264a4c0",
        "812188ad06660ec1b3b2b027ccfa291335021664"
      ],
      "author": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Thu Jan 26 03:33:30 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 03:33:33 2017 +0000"
      },
      "message": "Merge \"Add getVisualVoicemailPackageName() Make NMR2 voicemail columns public\""
    },
    {
      "commit": "61c74c6a4b0e30a3bd618cdf8c7d7e85edf139d9",
      "tree": "0a46fac728f0e0255db85bb1152c599900ffb958",
      "parents": [
        "8f3b174d90e3bf2093751fb1a1bd0603adac0222"
      ],
      "author": {
        "name": "Hangyu Kuang",
        "email": "hkuang@google.com",
        "time": "Fri Jan 20 10:15:04 2017 -0800"
      },
      "committer": {
        "name": "Hangyu Kuang",
        "email": "hkuang@google.com",
        "time": "Wed Jan 25 18:31:02 2017 -0800"
      },
      "message": "media: Add new MediaMuxer constructor that takes FileDescriptor.\n\nTest: Run new mediamuxer CTS test.\nBug: 34221063\nChange-Id: Iaad4f0254782dca3e5994e80af0848482847c618\n"
    },
    {
      "commit": "4bf00a2ca130766ceebc451b7c912ade26b5a245",
      "tree": "104b4485b0805954fea9548ab2e4114ce52267df",
      "parents": [
        "1bfd08f2335b4bf9da51e84debc0b8c9c520e667"
      ],
      "author": {
        "name": "Nick Chalko",
        "email": "nchalko@google.com",
        "time": "Wed Jan 25 16:29:01 2017 -0800"
      },
      "committer": {
        "name": "Nick Chalko",
        "email": "nchalko@google.com",
        "time": "Wed Jan 25 18:26:43 2017 -0800"
      },
      "message": "Add an intent that asks the launcher to make a channel browsable.\n\nTest: Cts passes. Will add tests to Cts-Verifier.\nBug: 34354495\nChange-Id: Ic441301a46790e15564a8d5e0d4e1ad4627680a1\n"
    },
    {
      "commit": "58266016c6672a319d9c8b3d7eaac310501c6a43",
      "tree": "6d1ef9b820f2ccead5444f6fbcb78a0bb7cd6b52",
      "parents": [
        "9aa513bf95498b6c7a94ba10b2f0444a6d09bd6b"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Jan 25 15:01:01 2017 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Jan 25 18:23:05 2017 -0800"
      },
      "message": "TIF: Add more fields for guide view on launcher\n\nTest: build\nBug: 34160270\nChange-Id: Icde5d2a9dd462df2c3acda24231dead173fde8dd\n"
    },
    {
      "commit": "ca19e3278bca7f259002b9ea8ad79f66da4e61eb",
      "tree": "ca14b4ff9acce5173498dbfa3345894e7c5c1150",
      "parents": [
        "2a27b2ca7c3c6631fb9e7ff4f1999fdbcef3caf6",
        "7b9605b79c4f738ee5b306d8693018e931cda18e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 02:06:03 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 02:06:06 2017 +0000"
      },
      "message": "Merge changes I818e8db9,Ie24468be\n\n* changes:\n  Added a new API to colorize notifications\n  Modified the interpolators when opening an ambient notification\n"
    },
    {
      "commit": "0f4a8ba209175bc61b9925508b4980cee3601f96",
      "tree": "9202aa9dfaa4ed0c007664767d5ad4ea8c14e6b6",
      "parents": [
        "3cb0a47aded5d31a24469b9da0485cf121efb7d8",
        "ded1df24e01b7317593bbec84724b10f5444d5d9"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Thu Jan 26 01:56:25 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 26 01:56:25 2017 +0000"
      },
      "message": "Merge \"Adding Dynamic ImsService Binding (1/3)\" am: 8e6b13a1c0 am: 64057ab972 am: 2741442324\nam: ded1df24e0\n\nChange-Id: Ifd95efa076b7f5c8c8b02be7688aab1008bbc63c\n"
    },
    {
      "commit": "ded1df24e01b7317593bbec84724b10f5444d5d9",
      "tree": "6a5ca2a99db381d7558e8dc799c3b39ad3cee351",
      "parents": [
        "7fef16ff248051b57433186f14db04d8cf070628",
        "2741442324618804cca953e30251864142e6302d"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Thu Jan 26 01:49:53 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 26 01:49:53 2017 +0000"
      },
      "message": "Merge \"Adding Dynamic ImsService Binding (1/3)\" am: 8e6b13a1c0 am: 64057ab972\nam: 2741442324\n\nChange-Id: Ibd5c988226e7994c332a7e7f8b40a9338cf84e0f\n"
    },
    {
      "commit": "3cb0a47aded5d31a24469b9da0485cf121efb7d8",
      "tree": "02981270236243a255eac14be9b4133c508a0256",
      "parents": [
        "feaac672270af28387eaa0e72d660fad905a28e1",
        "ebd3aa0bb80d6d0af6f76e3487d0c3f1d7d00cd7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 01:44:08 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 01:44:10 2017 +0000"
      },
      "message": "Merge \"Add APIs to hide voicemail settings.\""
    },
    {
      "commit": "64057ab972674ac0105af9e3a7003416f9a9c823",
      "tree": "667f891c9608c66bbf5de259f0ddc6f424a178f2",
      "parents": [
        "e80181055327812d83b73fe0357bebce156af3b1",
        "8e6b13a1c0e969b00d6b6e29fd367082be071ff9"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Thu Jan 26 01:41:38 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 26 01:41:38 2017 +0000"
      },
      "message": "Merge \"Adding Dynamic ImsService Binding (1/3)\"\nam: 8e6b13a1c0\n\nChange-Id: I8534273da5579b7662e66f80a60348a4665dd65b\n"
    },
    {
      "commit": "b66cfe8a88926994590ad6b6f1d416e5e3c45b0e",
      "tree": "96bce8b7a0a7a58e8974e7009d7d6b0b55e6394d",
      "parents": [
        "ca0034296b7721801a8bc27c97eb88e0bd3285fe",
        "436ab6a91d64ef6036c67bb361d807e398fb2c4c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 01:35:34 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 01:35:39 2017 +0000"
      },
      "message": "Merge \"Added support to authentication.\""
    },
    {
      "commit": "8e6b13a1c0e969b00d6b6e29fd367082be071ff9",
      "tree": "76fed2cd27627822c2465d616f4b98fbb67f6b32",
      "parents": [
        "273b886c49c3b8a4b73127fcadc4303e89bfc04a",
        "024aaf23881c142ba92194a001ac038253ae708e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 01:34:04 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 26 01:34:05 2017 +0000"
      },
      "message": "Merge \"Adding Dynamic ImsService Binding (1/3)\""
    },
    {
      "commit": "aef2513c7157a28236d097a81fe74d7ba6b710c9",
      "tree": "f97967f689a45ae9e57590ceba7bb30e5c754eef",
      "parents": [
        "4bd54c70fa37909fdd7c764d9995c132e7cc137d"
      ],
      "author": {
        "name": "Suprabh Shukla",
        "email": "suprabh@google.com",
        "time": "Mon Jan 23 18:09:03 2017 -0800"
      },
      "committer": {
        "name": "Suprabh Shukla",
        "email": "suprabh@google.com",
        "time": "Wed Jan 25 17:26:02 2017 -0800"
      },
      "message": "Adding an api for apps to check whether they can install apps\n\nSome apps may want to check whether they are trusted to install apps on\nthe device, so they can prompt the user to go to settings and mark them\nas trusted before they do an intensive operation like downloading an\napk.\n\nTest: cts-tradefed run cts -m CtsExternalSourcesTestCases\n\nBug: 31002700\nChange-Id: Icd9d04daa157e6733decba245ec251ce4acd4122\n"
    },
    {
      "commit": "ca0034296b7721801a8bc27c97eb88e0bd3285fe",
      "tree": "b3b6b509bf16de2789bb31689afc01ee69d95c36",
      "parents": [
        "ef756c3a34a5389e8a004395802250fb1af9a21d",
        "73145f4e60b874a408d26842d1cfc9c9506bfd9a"
      ],
      "author": {
        "name": "Philipp Weiß",
        "email": "phweiss@google.com",
        "time": "Thu Jan 26 01:25:21 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 01:25:24 2017 +0000"
      },
      "message": "Merge \"Create public API for policy transparency outside of Settings\""
    },
    {
      "commit": "ef756c3a34a5389e8a004395802250fb1af9a21d",
      "tree": "bf145c4641e8dba4897f1c0d642762663da672af",
      "parents": [
        "dc4ffdabc67c709e20e347ceaef8c3148c22a4ea",
        "e449171fc15aba2928a6e267a7214edbb470e812"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 01:23:22 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 01:23:28 2017 +0000"
      },
      "message": "Merge \"camera: Add enableZsl key\""
    },
    {
      "commit": "2fa71dd04a2fbc683611fc5b8dad1cd312ce3d8c",
      "tree": "70805c6e05e96cb1688cd4a7231b4c8583a98f77",
      "parents": [
        "78fe2569337eb127330cf7fcf4c58c4eb915f52d",
        "ebc2c14b0777042f2325d437078b0e7815129b75"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 26 00:22:49 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 26 00:22:54 2017 +0000"
      },
      "message": "Merge \"AudioTrack: Enable deep buffer mode from Java\""
    },
    {
      "commit": "59e152e92e6ebb71bab974973ce29b4f8d11f7cf",
      "tree": "0744765788e4e597f73c51b945b98cd4d5690e74",
      "parents": [
        "9ba0c613a5ee23d70b87bb65cb4638c5afeec6b1"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Wed Jan 25 17:42:53 2017 -0500"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Thu Jan 26 00:01:06 2017 +0000"
      },
      "message": "Add notification channel groups.\n\nTest: runtest systemui-notification, cts\nChange-Id: I3ed82f2b20d3f791b7cae379a49373cb41231739\n"
    },
    {
      "commit": "7b9605b79c4f738ee5b306d8693018e931cda18e",
      "tree": "78df14eac87cc49bae7ba2e6ee9457e5157ebaef",
      "parents": [
        "5be6f33996ed50f382f46a392a5a5f74d4c020eb"
      ],
      "author": {
        "name": "Selim Cinek",
        "email": "cinek@google.com",
        "time": "Thu Jan 19 17:36:00 2017 -0800"
      },
      "committer": {
        "name": "Selim Cinek",
        "email": "cinek@google.com",
        "time": "Wed Jan 25 15:31:53 2017 -0800"
      },
      "message": "Added a new API to colorize notifications\n\nOngoing notifications can now be colorized.\nThis will use the color provided as the background\nand invert most text colors\n\nTest: runtest -x cts/tests/app/src/android/app/cts/NotificationTest.java\nBug: 34469375\nChange-Id: I818e8db96c868d8bcde8f28c253efd581eeccaa2\n"
    },
    {
      "commit": "024aaf23881c142ba92194a001ac038253ae708e",
      "tree": "d0017aaa47e767a9dcf823f556604186509f417b",
      "parents": [
        "6d064d8780c4626d033c26fd87242080a2f1c768"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Mon Jan 23 15:17:50 2017 -0800"
      },
      "committer": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Wed Jan 25 15:12:28 2017 -0800"
      },
      "message": "Adding Dynamic ImsService Binding (1/3)\n\nAdds support for dynamic ImsService Binding (change 1/3). Included\nin this change:\n- AIDLs for ImsServiceController\n- ImsFeature/ImsServiceBase definitions\n- KEY_CONFIG_IMS_PACKAGE_OVERRIDE CarrierConfig option\n\nTest: Unit Tests in opt/telephony\nBug: 30290416\nChange-Id: Ic4cb1d85a29681b08a6a525c588a72209862dcc3\n"
    },
    {
      "commit": "ebd3aa0bb80d6d0af6f76e3487d0c3f1d7d00cd7",
      "tree": "30227758cebb207e0a7514c864d2a179417f2c46",
      "parents": [
        "896c7f8937618a419777df5372b71753f397ff9c"
      ],
      "author": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Tue Jan 24 18:23:00 2017 -0800"
      },
      "committer": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Wed Jan 25 13:58:23 2017 -0800"
      },
      "message": "Add APIs to hide voicemail settings.\n\nWith unbundle visual voicemail and dialer voicemail notification, the\ndialer should be able to control the voicemail settings, and refer\ntelephony settings as \"Advance settings\" only showing the options\nnot in the public API.\n\nThis CL gives the default dialer the ability to hide duplicated\nsettings in telephony.\n\nBug: 34691905\nFixes 34691905\nTest: CTS verifier test \"hide public settings in voicemail\"\n      \"hide voicemail in call settings\"\nChange-Id: I6589c3d77b5075265cf013ee56524a342904ecd1\n"
    },
    {
      "commit": "3416cc280034b4e617768ecb2d51f55fda7f576b",
      "tree": "6d2d7ea4f3c1d6b7cd077345116a356acfbb358d",
      "parents": [
        "5b15e376783861d451d9d8c05628131d5c0871c2",
        "23dfee521a7782bf901344beec6f94614e0b02b8"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 21:53:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 21:53:32 2017 +0000"
      },
      "message": "Merge \"mediaplayer: add buffering settings API\""
    },
    {
      "commit": "73145f4e60b874a408d26842d1cfc9c9506bfd9a",
      "tree": "8895cce9d01c802c9d25e2c4c675d827e6e2b854",
      "parents": [
        "1b60614ae92064f72e8e982e0a47a05f25391a4d"
      ],
      "author": {
        "name": "phweiss",
        "email": "phweiss@google.com",
        "time": "Tue Jan 17 19:06:38 2017 +0100"
      },
      "committer": {
        "name": "phweiss",
        "email": "phweiss@google.com",
        "time": "Wed Jan 25 22:20:46 2017 +0100"
      },
      "message": "Create public API for policy transparency outside of Settings\n\nThe new DPM.createAdminSupportIntent() returns an intent that shows the\n\"This action was disabled by your admin\"-dialog from settings.\nThis enables apps to inform the user about the cause of restricted\nfunctionality.\n\nA new extra for the intent allows to specialize the dialog for different\nrestricted features, instead of a generic message for all features.\n\nBug: 31215663\nTest: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services\n\nChange-Id: I3de7aeec0f88b8f013a63957aec803cd123fbedc\n"
    },
    {
      "commit": "3787de16d24001eeb452e1c711d4290a396e67c9",
      "tree": "33bb0ba8cc2f3a3f7210562f640701156e6dbfd7",
      "parents": [
        "73c945de336c104304c147d182f0fcb31fe8cd50"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Wed Dec 21 10:36:35 2016 -0800"
      },
      "committer": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Wed Jan 25 13:13:45 2017 -0800"
      },
      "message": "Implement pointer capture API\n\nWhen in pointer capture mode, mouse pointer disappears and\nfurther mouse events are dispatched to the focused view\nin the window which has requested capture.\n\nThe captured events have the source SOURCE_MOUSE_RELATIVE\nbelonging to SOURCE_CLASS_TRACKBALL. They are\ndispatched through dispatchCapturedPointerEvent /\nonCapturedPointerEvent. There is also a new listener.\n\nPointer capture mode may only be granted to a currently\nfocused window, and will be canceled upon a window focus change.\n\nTest: cts-tradefed ... --test android.view.cts.PointerCaptureTest\nBug: 30897034\nChange-Id: I6e5934aa415ac2b6dda1cee173d0f23e5021af84\n"
    },
    {
      "commit": "436ab6a91d64ef6036c67bb361d807e398fb2c4c",
      "tree": "dabcbd8797e1c01f3cd2675e7fd24cf74c688aa6",
      "parents": [
        "1b60614ae92064f72e8e982e0a47a05f25391a4d"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 15 11:56:15 2016 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Jan 25 13:03:32 2017 -0800"
      },
      "message": "Added support to authentication.\n\nAutoFillService can now require user authentication, both at\nFillResponse and Dataset levels;\n- FillResponse authentication is typically used when the user data\n  need to be unlocked before the first use.\n- Dataset authentication is typically used to unlock sensitive data\n  such as credit card info.\n\nThe authentication can be handled by the service itself (for example,\nwhen it uses the credit card CVV to unlock it) or by the Android\nsystem (when the service asks for fingerprint authentication).\n\nBug: 31001899\n\nTest: manual verification\nTest: CtsAutoFillServiceTestCases passes\n\nChange-Id: If62f42f697ab5ef0d14d991ff1077d1c38808e61\n"
    },
    {
      "commit": "ebc2c14b0777042f2325d437078b0e7815129b75",
      "tree": "369df4c30341bc3a62f7675a8a9c7183118bb830",
      "parents": [
        "0b0a6b63beaa20be9296f82f342cb6819a873434"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jan 12 19:20:29 2017 -0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jan 25 13:00:34 2017 -0800"
      },
      "message": "AudioTrack: Enable deep buffer mode from Java\n\nTest: AudioTrack CTS test, Play Movies\nBug: 30687201\nChange-Id: Id3a8d675966671ed13c488936228bd76dfc6c1fe\n"
    },
    {
      "commit": "23dfee521a7782bf901344beec6f94614e0b02b8",
      "tree": "d6c4e86b2192f9d1d49171eaed093eec139577e6",
      "parents": [
        "65e8f0adf31f8af2fea5d2ab9bdbf95ecf693852"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Jan 16 10:18:15 2017 -0800"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Jan 25 11:54:56 2017 -0800"
      },
      "message": "mediaplayer: add buffering settings API\n\nTest: compiles, ensured that params is passed all the way to source\nBug:32524218\n\nChange-Id: I90d65e10012ecc1a78989eba80d025d513ceaadf\n"
    },
    {
      "commit": "000f7cd646f016febb4d90ae19a697ae548025e2",
      "tree": "b6c2f4e8149f9786c29bbeacd86b6647474fac33",
      "parents": [
        "13fd7f1899d2fe42eee147eecb951e7420183013",
        "3461d3c069468e176fab6bc8b8e78c8e6bc81e8b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 19:44:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 19:44:33 2017 +0000"
      },
      "message": "Merge \"Initial IME integration.\""
    },
    {
      "commit": "4db5dedb76ad86692361b0f9b30880eafc5ec3a7",
      "tree": "02188d544398ef911a410d6d6701b60be6f57c65",
      "parents": [
        "c56c7462ef349efc11079c479424c0c60b473a47"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Wed Jan 25 19:24:15 2017 +0000"
      },
      "committer": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Wed Jan 25 19:24:15 2017 +0000"
      },
      "message": "Revert \"Revert \"Remove View.setTooltip/getTooltip\"\"\n\nThis reverts commit c56c7462ef349efc11079c479424c0c60b473a47.\n\nChange-Id: Id129d099e3579b2c51d77c1fee25816ba3bd9df7\n"
    },
    {
      "commit": "142cbdd474539626db7e4cb875c055df158b467b",
      "tree": "bc694f7c0da0ecb3606873b6165be8e1b0e39fb5",
      "parents": [
        "fbcb01cde703e8c679c3c3545ca4229385f0c2db",
        "9ba0c613a5ee23d70b87bb65cb4638c5afeec6b1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 19:20:18 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 19:20:21 2017 +0000"
      },
      "message": "Merge \"Expose intents for launching channel settings.\""
    },
    {
      "commit": "b93ecbae5760118c311703d2609f466b6b216732",
      "tree": "b470dfa7212e7edbb0c569597d65f85d2c750569",
      "parents": [
        "e7beedff6e02cf11bce748d1aa73c848c53bbccd",
        "437cd56a7f36a3046a6422330295dd9ad00e3c8e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 18:47:17 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 18:47:20 2017 +0000"
      },
      "message": "Merge \"MessagingStyle: Add historic messages\""
    },
    {
      "commit": "452efaac32a9c0d73abae1b9f0bbe5b1e99440d8",
      "tree": "82f0c2b9443856a6a67a2bc2a45355d65adba444",
      "parents": [
        "1597e0540d67d439c370b398ee12604c6f179bc8",
        "52088e4859ab81f2ec23a1063c1e1ffd8f23cf3f"
      ],
      "author": {
        "name": "Edman Anjos",
        "email": "edmanp@google.com",
        "time": "Wed Jan 25 17:59:59 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 18:00:03 2017 +0000"
      },
      "message": "Merge changes I50d2903e,Ieb347ce3\n\n* changes:\n  Add DPMS delegation scopes.\n  Add block uninstall delegation in DPMS.\n"
    },
    {
      "commit": "9ba0c613a5ee23d70b87bb65cb4638c5afeec6b1",
      "tree": "9f9446233a0511770562faf0054db7f51e94960f",
      "parents": [
        "2a128746b3466e75b6040147fa831fe12cc2ccbb"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Wed Jan 25 10:31:34 2017 -0500"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Wed Jan 25 12:43:13 2017 -0500"
      },
      "message": "Expose intents for launching channel settings.\n\nTest: manual\nChange-Id: I86e12b0ed6b60660b9f6bd1015c186897418560e\n"
    },
    {
      "commit": "d20a0fd3df8bd914694941b826c467fcc289e3fa",
      "tree": "804f5b3ac8ac7bc03a2df3e4780656276eeb289f",
      "parents": [
        "32eaa6722cd37406bfabcf07483c0e17f9513277",
        "2be5b9f9663f1f0d6a3b99b679cbfa3b43732e55"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 17:23:21 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 17:23:24 2017 +0000"
      },
      "message": "Merge \"Add support for BLOB format to HardwareBuffer.\""
    },
    {
      "commit": "32eaa6722cd37406bfabcf07483c0e17f9513277",
      "tree": "ec7ed14d44bfc50c7e36a59add748eb2a9f7c391",
      "parents": [
        "617bbb3ba4bab4e0c3d3c18b160b29d89c84f3ba",
        "13351997aa36eb53e5ff0fcee3f5e3da83787278"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Wed Jan 25 17:22:57 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 17:23:00 2017 +0000"
      },
      "message": "Merge \"New functionalities for AnimatorSet: Reverse, Seek\""
    },
    {
      "commit": "9aa513bf95498b6c7a94ba10b2f0444a6d09bd6b",
      "tree": "f43f9ea88b440cbfda039f395a6c5ce0be052f68",
      "parents": [
        "5403efba3c63837cd77b5d7cbcca8e33bc3f5771",
        "4e8628157ad0c8c52e74b720eb0328086272ffda"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jan 25 16:56:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 16:56:51 2017 +0000"
      },
      "message": "Merge \"Add support for Split APK dependcies\""
    },
    {
      "commit": "437cd56a7f36a3046a6422330295dd9ad00e3c8e",
      "tree": "4863acf2e45f3a77fd7dc778a8f6b01a3c3f79bb",
      "parents": [
        "2536cc6872ecdc43d7e9b07a02fbc844e5f124bb"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Wed Jan 18 15:47:03 2017 -0800"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Wed Jan 25 16:55:57 2017 +0000"
      },
      "message": "MessagingStyle: Add historic messages\n\nAdds an API to supply additional context to a Notification that uses\nMessagingStyle. To be used in the future to enhance the Direct Reply\nexperience.\n\nTest: runtest cts\nChange-Id: I6da0b9067cbffbaae2bd3c5d9606a0b5437f1ed4\n"
    },
    {
      "commit": "717ca4b07deaea5b9ae2402d3dd87c1592f634f7",
      "tree": "a8f9e23d681489c3c0649063d681e6982d6b2393",
      "parents": [
        "78c57e3f7ecd763417c58bec97f26ac477a573f6",
        "2a128746b3466e75b6040147fa831fe12cc2ccbb"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Wed Jan 25 16:03:36 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 16:03:38 2017 +0000"
      },
      "message": "Merge \"Allow notifications to be autocanceled at a time.\""
    },
    {
      "commit": "52088e4859ab81f2ec23a1063c1e1ffd8f23cf3f",
      "tree": "874e2fbc6d5b05195afcb77a0a57f345e42ef3eb",
      "parents": [
        "a5f2fb1a43aebe0481c45376812ad7d58e699647"
      ],
      "author": {
        "name": "Edman Anjos",
        "email": "edmanp@google.com",
        "time": "Fri Jan 13 22:26:17 2017 +0100"
      },
      "committer": {
        "name": "Edman Anjos",
        "email": "edmanp@google.com",
        "time": "Wed Jan 25 16:53:50 2017 +0100"
      },
      "message": "Add DPMS delegation scopes.\n\nImplement the permission grant, package access, enable system app, and\nkeep uninstalled packages delegation scope APIs in the\nDevicePolicyManagerService.\n\nThis feature gives a device owner or profile owner the ability to\ndelegate some of its privileges to another application.\n\nBug: 33105287, 33105284, 33105719\nTest: cts-tradefed run cts-dev --module CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.MixedDeviceOwnerTest#testDelegation\nChange-Id: I50d2903eb73ae7844ec1f6fe07e41101ea2760ea\n"
    },
    {
      "commit": "a5f2fb1a43aebe0481c45376812ad7d58e699647",
      "tree": "788831bc1b64b8693ab4d30bf474b128daff4ac4",
      "parents": [
        "78c57e3f7ecd763417c58bec97f26ac477a573f6"
      ],
      "author": {
        "name": "Edman Anjos",
        "email": "edmanp@google.com",
        "time": "Mon Dec 19 11:25:54 2016 -0800"
      },
      "committer": {
        "name": "Edman Anjos",
        "email": "edmanp@google.com",
        "time": "Wed Jan 25 16:31:13 2017 +0100"
      },
      "message": "Add block uninstall delegation in DPMS.\n\nImplement the uninstall blocker delegation scope API in\nDevicePolicyManagerSercice.\n\nThis feature gives a device owner or profile owner the ability to\ndelegate some of its privileges to another application.\n\nBug: 33105718\nTest: cts-tradefed run cts-dev --module CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.MixedDeviceOwnerTest#testDelegation\nChange-Id: Ieb347ce3fb6219fe7f04cafbcd1e6b7359b31a10\n"
    },
    {
      "commit": "2a128746b3466e75b6040147fa831fe12cc2ccbb",
      "tree": "fb778ee1cd1053781df4b6612ed06757ccedacb1",
      "parents": [
        "573c6537081ab83e2f083e8057c7137e5754f423"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Mon Nov 28 14:29:25 2016 -0500"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Wed Jan 25 09:28:01 2017 -0500"
      },
      "message": "Allow notifications to be autocanceled at a time.\n\nTest: cts\nChange-Id: I24ebcab2c0fa2028ec5d2984dc3b7ec19391b590\n"
    },
    {
      "commit": "f994677626a6babc5121647646f17a7de85065a7",
      "tree": "ce89b9f5dcf8cb771c69c1827e74a44b289278cd",
      "parents": [
        "981bd31b33b882e52a8d16b6a36f175729ae84be"
      ],
      "author": {
        "name": "Edman Anjos",
        "email": "edmanp@google.com",
        "time": "Mon Nov 28 16:35:15 2016 +0100"
      },
      "committer": {
        "name": "Edman Anjos",
        "email": "edmanp@google.com",
        "time": "Wed Jan 25 13:00:40 2017 +0100"
      },
      "message": "Refactor DPMS Cert Installer and App Restrictions delegation.\n\nThe DevicePolicyManagerService currently supports delegation of\ncertificate installation and application restriction management, both\nof which are individually handled by DPMS.\n\nUpcoming framework features will add four more delegation types,\nnamely: block uninstall; app permission management; app access\nmanagement; and system app enabler. At this moment it makes sense to\nrefactor the underlying delegation system in DPMS so that current and\nfuture delegates can be handled in a more generic way.\n\nBug: 33099995\nTest: DPMS unit tests\nChange-Id: I9e350143572c6690febdd59d1ed5149af8ee4388\n"
    },
    {
      "commit": "981bd31b33b882e52a8d16b6a36f175729ae84be",
      "tree": "f11b0e69f3b0aab0eba4c9a93a11638ee18889d4",
      "parents": [
        "38c239507884be18edc5c0ea80f8f90e8d296ec7",
        "db79f383e9f20d803b6402298cf3ba7bc13d9189"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Jan 25 11:50:30 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 25 11:50:30 2017 +0000"
      },
      "message": "Merge \"API: Update Collections to OpenJDK8u60\" am: 815fb54798 am: b8557c431d am: 6a5fccdc66\nam: db79f383e9\n\nChange-Id: Ie1d8db44913d24f55682465021fe1145be76c5d2\n"
    },
    {
      "commit": "db79f383e9f20d803b6402298cf3ba7bc13d9189",
      "tree": "0b417290514fa7c10cb15aa2d586f8bac9fcb025",
      "parents": [
        "4be45a09f46fe7998bd93bc896e2aec53c5321a2",
        "6a5fccdc667015cef8e22aa5b8a73911b44c4a21"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Jan 25 11:44:56 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 25 11:44:56 2017 +0000"
      },
      "message": "Merge \"API: Update Collections to OpenJDK8u60\" am: 815fb54798 am: b8557c431d\nam: 6a5fccdc66\n\nChange-Id: I2636fb0fc54bbf0958b498494f4d587aa283b7d4\n"
    },
    {
      "commit": "b8557c431d4ffe946d1d9bbe4d5e73987d6e0151",
      "tree": "0e199bff629fd19cbcbb700bc2ea3bf92e88a375",
      "parents": [
        "55d23d0829664a260a403f4456aa56c452eb2967",
        "815fb5479868ec7160bdd293766e827c576467e0"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Jan 25 11:35:11 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 25 11:35:11 2017 +0000"
      },
      "message": "Merge \"API: Update Collections to OpenJDK8u60\"\nam: 815fb54798\n\nChange-Id: I97f0155ed743c7bc674f0241b2b07955e8d68e56\n"
    },
    {
      "commit": "815fb5479868ec7160bdd293766e827c576467e0",
      "tree": "bd8286e088b29dea0bd46deab508bb4085dbc3ad",
      "parents": [
        "123aa5d8b16bf68f9297b185c217811b949390d0",
        "13fd56293c5f7b5dc6996d100559d6e47c00b298"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Jan 25 11:29:42 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 25 11:29:43 2017 +0000"
      },
      "message": "Merge \"API: Update Collections to OpenJDK8u60\""
    },
    {
      "commit": "a1dc8f6d71f9c8b2c6c1dce28c6a5b30005dd949",
      "tree": "e326201e60723b1b8f9e0f350015619bc5ac64fa",
      "parents": [
        "6c9c5541ab7ebc0ecb23356b08f77e11598be6c3",
        "cba645896f53ca7b5508d6ebcc60d93a640cd19d"
      ],
      "author": {
        "name": "Filip Pavlis",
        "email": "pavlis@google.com",
        "time": "Wed Jan 25 10:26:17 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 10:26:24 2017 +0000"
      },
      "message": "Merge \"Add getParent() on Preference.\""
    },
    {
      "commit": "13351997aa36eb53e5ff0fcee3f5e3da83787278",
      "tree": "d68bf7ab3502755b62659c6c1337ee931e76d340",
      "parents": [
        "b81d978490269780b3333ac55bcb3af7732cf098"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Tue Jan 17 17:10:42 2017 -0800"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Wed Jan 25 02:13:25 2017 -0800"
      },
      "message": "New functionalities for AnimatorSet: Reverse, Seek\n\nThis CL adds reverse and seek to AnimatorSet\u0027s capabilities.\n\nStructural changes:\n1) Child animators are now being pulsed by AnimatorSet in a more\n   timeline manner, as opposed to the old listener based style.\n   This timeline based approach avoids the time offset in between\n   sequential animations, and therefore produces a more accurate\n   overall duration.\n2) Timeline is done by representing start and end of each child animator\n   in two separate events. All the events are then sorted based on the\n   time they happen, such that it\u0027s clear what should happen in between\n   last frame and the new frame (i.e. which animations should start\n   or end).\n\nTest: CTS (in the same topic branch)\nBug: 30993532\n\nChange-Id: If1dc6e8dbc93a4bf5ade8c5b0dcf43d3ee6ba7b5\n"
    },
    {
      "commit": "b81d978490269780b3333ac55bcb3af7732cf098",
      "tree": "e7bd1b7a7e1d37e5c041ccd37783ab78420f1672",
      "parents": [
        "6bb61a7d2471a8844c59c786598f08d00154170e",
        "fa2672b71d9501463d8b9de5162f069b9e48384b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 05:08:40 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 05:08:46 2017 +0000"
      },
      "message": "Merge changes from topic \u0027sensor_direct_report\u0027\n\n* changes:\n  Sensor event direct report mode implementation\n  Sensor event direct report mode support API\n"
    },
    {
      "commit": "2be5b9f9663f1f0d6a3b99b679cbfa3b43732e55",
      "tree": "fcdb119b2a6568e2415cb7ba0e095a30f5eef9e2",
      "parents": [
        "5559543e81e5bb82e84433f35453197ef991ce15"
      ],
      "author": {
        "name": "Craig Donner",
        "email": "cdonner@google.com",
        "time": "Tue Jan 24 18:14:44 2017 -0800"
      },
      "committer": {
        "name": "Craig Donner",
        "email": "cdonner@google.com",
        "time": "Tue Jan 24 18:43:30 2017 -0800"
      },
      "message": "Add support for BLOB format to HardwareBuffer.\n\nTest: updated CTS test to check for error conditions if the blob dimensions are\nbad.\nBug: 34050596\n\nChange-Id: I3ec6e7a43dae8d0ac2b2d04bc4b38cd3c12f8390\n"
    },
    {
      "commit": "4e8628157ad0c8c52e74b720eb0328086272ffda",
      "tree": "bdd92850181581f952cffe42fcd8d208ac22b96c",
      "parents": [
        "896c7f8937618a419777df5372b71753f397ff9c"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Nov 21 16:02:24 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Jan 24 18:34:08 2017 -0800"
      },
      "message": "Add support for Split APK dependcies\n\nApps can now declare in their base APK AndroidManifest.xml\nthat they want to have their split APKs loaded in isolated\nContexts. This means code and resources from the split\nget loaded into their own ClassLoader and AssetManager.\n\n\u003cmanifest xmlns:android\u003d\"...\"\n          ...\n          android:isolatedSplits\u003d\"true\"\n          ...\n\nIn order to make this more useful, splits can declare dependencies\non other splits, which will all get pulled in to the Context\nand run as expected at runtime.\n\nA split declares its dependency on another split by using the\ntag \u003cuses-split\u003e in its AndroidManifest.xml:\n\n\u003cmanifest xmlns:android\u003d\"...\"\u003e\n    ...\n    \u003cuses-split android:name\u003d\"feature_split_1\" /\u003e\n    ...\n\nA split can have a single parent on which it depends on. This is\ndue to the limitation of having a single ClassLoader parent.\nAll splits depend on the base APK implicitly.\n\nPackageManager verifies that no cycles exist and that each dependency\nis present before allowing an installation to succeed.\n\nThe runtime will then load splits based on the dependencies.\n\nGiven the following APKs:\n\nbase \u003c-- split A \u003c-- split C\n  ^----- split B\n\nIf an Activity defined in split C is launched, then the base,\nsplit A, and split C will be loaded into the ClassLoader defined\nfor the Activity\u0027s Context. The AssetManager will similarly be loaded\nwith the resources of the splits.\n\nA split can be manually loaded by creating a Context for that split, defined\nby its name:\n\nContext.createContextForSplit(\"my_feature_split_1\");\n\nAll installed Activities, Services, Receivers, and Providers are accessible\nto other apps via Intent resolution. When they are instantiated, they are\ngiven the appropriate Context that satisfies any dependencies the split they\nwere defined in stipulated.\n\nTest: WIP (CTS tests to come)\nChange-Id: I8989712b241b7bc84381f2919d88455fcad62161\n"
    },
    {
      "commit": "3461d3c069468e176fab6bc8b8e78c8e6bc81e8b",
      "tree": "f429d90febea0242519983993b37ae5eded6e929",
      "parents": [
        "dd94abc33d548c022315a1f57f9519a99431c55d"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 19 08:54:55 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Jan 24 17:57:16 2017 -0800"
      },
      "message": "Initial IME integration.\n\n- Created an AutoFillManager class, which provides methods to show\n  the auto-fill bar for views and virtual nodes.\n- Automatically launches an auto-fill request when the IME is shown\n(and an AutoFillService is set for the given user) on TextViews.\n- Updated VirtualNodeListener to use this new API.\n\nBUG: 31001899\nBUG: 34171325\nTest: CtsAutoFillServiceTestCases passes\nTest: manual verification\n\nChange-Id: Id72ce97da70217081b5823cfc7b138412634fcf3\n"
    },
    {
      "commit": "58ac1310db09e89734e9fb90a5c9025c90277e4a",
      "tree": "17d741c329f0829c668c46be692ec192515175a2",
      "parents": [
        "1909ec1cd524bbe8528485d5ec1bcd2a79e763e6",
        "4bd7abe72a647ceb2175a4fe66aa640815c116f8"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 01:54:19 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 01:54:24 2017 +0000"
      },
      "message": "Merge \"Camera2: Combine API for deferred surface and shared surface\""
    },
    {
      "commit": "9d3d90a22f0f64af71fb970e9a5ce75ac799fe3e",
      "tree": "09cef74bf0737c8675455749a814ec3754674dfc",
      "parents": [
        "01e4eeb0e86c5517bbdb51527e1c0dacd1f98779",
        "b8e0dee9af9ab0d2243c15faf9edb81d5a83f3cf"
      ],
      "author": {
        "name": "Ralph Nathan",
        "email": "ralphnathan@google.com",
        "time": "Wed Jan 25 01:32:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 01:32:54 2017 +0000"
      },
      "message": "Merge \"Add FEATURE_EMBEDDED to PackageManager\""
    },
    {
      "commit": "7f7372ae2abeecb564d426ec3efbfa039c797885",
      "tree": "d277f5c59573bea7e45326c757cbbd200038fd85",
      "parents": [
        "29d20fc0f9d185ce356a984468142ae5c63e911b"
      ],
      "author": {
        "name": "Sunny Goyal",
        "email": "sunnygoyal@google.com",
        "time": "Tue Jan 24 11:53:54 2017 -0800"
      },
      "committer": {
        "name": "Sunny Goyal",
        "email": "sunnygoyal@google.com",
        "time": "Tue Jan 24 17:26:14 2017 -0800"
      },
      "message": "Adding AppWidgetManager.isRequestPinAppWidgetSupported\n\nLaunchers can choose to implement support pin shortcut or pin appwidget\nor both by specifying different actions in the intent filter\n\nTest: Automated tests and CTS\nBug: 34174006\nChange-Id: I4456dbb943cfba11d465556f0732f0ed629ab3ba\n"
    },
    {
      "commit": "e84ad491c82168228f042644285a2581fc619baf",
      "tree": "4c14b28f519d939da23578fc7b4935cfb5b1adb6",
      "parents": [
        "b7cab6a19096458a7fafa905eed52db83759b6c6",
        "4832745b84d6a358582f2264d22acacf25e01b07"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 01:20:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 01:20:28 2017 +0000"
      },
      "message": "Merge \"Add color mode to activity/window\""
    },
    {
      "commit": "ccf0c8edeab411b403ad6fe967e17205745a477f",
      "tree": "6461da7954d6ce1978f4b30dd619feb71cbac0b4",
      "parents": [
        "1a2928842069da80fe03f0fb88e7d8861815b42d"
      ],
      "author": {
        "name": "Peng Xu",
        "email": "pengxu@google.com",
        "time": "Tue Jan 17 22:16:21 2017 -0800"
      },
      "committer": {
        "name": "Peng Xu",
        "email": "pengxu@google.com",
        "time": "Tue Jan 24 16:54:05 2017 -0800"
      },
      "message": "Sensor event direct report mode support API\n\nAdd direct report mode support API with stub implementation.\n\n * new SensorDirectChannel class to represent direct channel and\n   hold related constants.\n * new methods in SensorManager to create/destroy direct channel\n * new method in SensorManager to config sensor report in direct\n   channel\n * new methods in Sensor to expose direct report related capability\n   of sensor.\n\nTest: tested with demo app\nBug: 30985702\nChange-Id: Ic03c67bea4ed0a728d3d783e95de6c59cf663cca\n"
    },
    {
      "commit": "e449171fc15aba2928a6e267a7214edbb470e812",
      "tree": "fd0d759764be6fac5bb4815d90403c9d96fac41e",
      "parents": [
        "c49f2e5d88af31b3a20e460c08097dfab4edaa15"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Jan 11 11:14:06 2017 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jan 24 16:06:17 2017 -0800"
      },
      "message": "camera: Add enableZsl key\n\nAdd enableZsl key so the apps can choose to allow or disallow out of\norder frame contents and metadata like timestamp.\n\nTest: Camera CTS tests on Marlin\nBug: 30983997\nChange-Id: I009c53a2cc63ac74a4467c26aa8de018a3e6b7aa\n"
    },
    {
      "commit": "4832745b84d6a358582f2264d22acacf25e01b07",
      "tree": "cde7e923e06892dfa7c9b1a10a10e8da91e007f1",
      "parents": [
        "a393ff7dc7e7e7002a400d37868e0d6c14507b43"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Jan 23 17:03:35 2017 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Jan 24 15:55:09 2017 -0800"
      },
      "message": "Add color mode to activity/window\n\nThe color mode lets an application request a wide color gamut for\na specific window. This will also be used in the future to request\nHDR. The color mode is currently either default (sRGB) or an undefined\nwide gamut color space chosen by the platform. These attributes could\nlater be used to choose a specific color space if we deem this important\nor useful.\n\nThis change also renames the various \"colorimetry\" attributes and\nconstants to \"color mode\" for consistency. These symbols were\nadded in O and can be safely renamed.\n\nTest: CtsColorModeTestCases\nBug: 32984164\nChange-Id: I4d4691dd12dbe3f3aa6a5cf893cff39aa16c739e\n"
    },
    {
      "commit": "c755fb64f66de488f67f9a1b16f98788ea6646c5",
      "tree": "333a0068bc8e583fc0497d2f63df30860af5b5dc",
      "parents": [
        "b87834838270798119bc02f22a6f467d91db56c4",
        "3c191b8bd93ae4d8951fa7215f55ecafeb58852d"
      ],
      "author": {
        "name": "Matthew Snider",
        "email": "msnider@google.com",
        "time": "Tue Jan 24 23:31:07 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 23:31:12 2017 +0000"
      },
      "message": "Merge \"Introducing clear package data intent\""
    },
    {
      "commit": "b8e0dee9af9ab0d2243c15faf9edb81d5a83f3cf",
      "tree": "67674bdc19c49430c831ea8e641382133a2d05c0",
      "parents": [
        "387838793c9ba9957c709ff0d02c0fcefd11635c"
      ],
      "author": {
        "name": "Ralph Nathan",
        "email": "ralphnathan@google.com",
        "time": "Tue Jan 24 15:24:59 2017 -0800"
      },
      "committer": {
        "name": "Ralph Nathan",
        "email": "ralphnathan@google.com",
        "time": "Tue Jan 24 15:30:50 2017 -0800"
      },
      "message": "Add FEATURE_EMBEDDED to PackageManager\n\nThis CL adds FEATURE_EMBEDDED to PackageManager to identify Android\nThings devices.\n\nBUG: 34644059\nTest: built using make update-api\n\nChange-Id: Ife4430e4a445f6afdd969e94db5fe5c9098ee145\n"
    },
    {
      "commit": "b87834838270798119bc02f22a6f467d91db56c4",
      "tree": "2ad41673dea17c32a7bc04438b23214c1e4d55c7",
      "parents": [
        "6cdd505398a202a57fec6d9a5eec9dfc2d0f7f8c",
        "0bb25299ca01561eb3a8e69b042f8f16dc440882"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 24 23:26:20 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 23:26:24 2017 +0000"
      },
      "message": "Merge \"Don\u0027t mark query+cancellationSignal final.\""
    },
    {
      "commit": "8d07bfa43745a069b0911f7529acad3a423d94d4",
      "tree": "eb9b59a63301645344351b8d47d216cc47a36863",
      "parents": [
        "4afaad887fe3e78f08731ce0df7a9a2e4d94c5f0",
        "f665a3295000941e98175ab5d2f355d4b46959ce"
      ],
      "author": {
        "name": "Hyunyoung Song",
        "email": "hyunyoungs@google.com",
        "time": "Tue Jan 24 23:01:36 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 23:01:40 2017 +0000"
      },
      "message": "Merge \"Adds MaskableIconDrawable class to android.graphics.drawable package\""
    },
    {
      "commit": "f070b4ef5588f7af74be705c13db3e77f9e3a2c5",
      "tree": "23098102675990c5c4ed90a7231700184aa80e21",
      "parents": [
        "02b0d4054755af5dde16910377099c0b8fbab200",
        "cf63ff1532e793560f62e1c75f3402b48b0f09ba"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 24 22:52:39 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 22:52:43 2017 +0000"
      },
      "message": "Merge \"Snoozing API changes\""
    },
    {
      "commit": "18b317cf9857693e905b44a1c46f4806270d0a95",
      "tree": "10388c5eb74025878ec3edfeedeecba1b37dc73d",
      "parents": [
        "13c8c869d209e540e5c41f3be43ece77e784efa9",
        "c56c7462ef349efc11079c479424c0c60b473a47"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Tue Jan 24 22:37:57 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 22:38:01 2017 +0000"
      },
      "message": "Merge \"Revert \"Remove View.setTooltip/getTooltip\"\""
    },
    {
      "commit": "c56c7462ef349efc11079c479424c0c60b473a47",
      "tree": "c6b8637c4f64998fec4f30fd242a3aca020f1128",
      "parents": [
        "3da84b4e3c5c7af65572304c7f1fe3fc81f6265d"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Tue Jan 24 22:17:42 2017 +0000"
      },
      "committer": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Tue Jan 24 22:17:42 2017 +0000"
      },
      "message": "Revert \"Remove View.setTooltip/getTooltip\"\n\nThis reverts commit 3da84b4e3c5c7af65572304c7f1fe3fc81f6265d.\n\nChange-Id: Ie6f29f6527d71f564906b4cc05b344823c73c3f2\n"
    },
    {
      "commit": "975911cda83433ef21d93a0c7a194417dd1c0fc7",
      "tree": "d0d0e987ef6eb668bcce4dae8bc40f408395ad2d",
      "parents": [
        "04620c98a7470109700e93caaa84b44ff23dfb5e",
        "4c8c963eced8e145ecf314a41c8396c7df8e0a39"
      ],
      "author": {
        "name": "Evan Rosky",
        "email": "erosky@google.com",
        "time": "Tue Jan 24 21:49:02 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 21:49:07 2017 +0000"
      },
      "message": "Merge \"Add support for automatic focusability determination\""
    },
    {
      "commit": "0bb25299ca01561eb3a8e69b042f8f16dc440882",
      "tree": "535d0af0439bcd7572173438f3b3a92a3cb452d8",
      "parents": [
        "25ee47ff2408494f85ff6b9acbb509aef84cf80e"
      ],
      "author": {
        "name": "Steve McKay",
        "email": "smckay@google.com",
        "time": "Tue Jan 24 11:45:18 2017 -0800"
      },
      "committer": {
        "name": "Steve McKay",
        "email": "smckay@google.com",
        "time": "Tue Jan 24 13:46:15 2017 -0800"
      },
      "message": "Don\u0027t mark query+cancellationSignal final.\n\nBug: 34517733\nTest: None.\nChange-Id: Iff281c676b928859c0e2e975d9f0cfabb36479d9\n"
    },
    {
      "commit": "3c191b8bd93ae4d8951fa7215f55ecafeb58852d",
      "tree": "0a40bf2999c5da944e3da58dc7a9abcdef840aff",
      "parents": [
        "5559543e81e5bb82e84433f35453197ef991ce15"
      ],
      "author": {
        "name": "msnider",
        "email": "msnider@google.com",
        "time": "Mon Jan 23 14:23:16 2017 -0800"
      },
      "committer": {
        "name": "msnider",
        "email": "msnider@google.com",
        "time": "Tue Jan 24 13:39:52 2017 -0800"
      },
      "message": "Introducing clear package data intent\n\nClear data Intent can be called from any application and\nexecutes in the PackageInstaller. The user will be asked\nto verify that they truly want to clear package data via\nan AlertDialog.\n\nThis was initially intended to be @SystemApi, but\nconversations with API-Review led to it be public.\n\nTest: Covered by a gts-test ag/1806256 and manually tested\nby calling from com.android.vending (Play Store).\n\nbug: 33017941\nbug: 31008483\n\nChange-Id: Ibeae6620303ba52cc2ebf0383756c9380d3fa013\n"
    },
    {
      "commit": "cf63ff1532e793560f62e1c75f3402b48b0f09ba",
      "tree": "dd4945e0b9a0ff466909bdf8d0805580d7d5bfaa",
      "parents": [
        "52faea7acbad5bf9c2006db79353390ea915b18d"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Tue Jan 24 13:55:48 2017 -0500"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Tue Jan 24 16:18:52 2017 -0500"
      },
      "message": "Snoozing API changes\n\n- No one can snooze for an undetermined amount of time\n- Only the assistant can unsnooze\n- Listeners can retrieve a list of snoozed notifications\n\nTest: runtest systemui-notification, cts verifier\nChange-Id: Idfaee6d8bc15a5d41630f86f7e852468b07dc7d0\n"
    },
    {
      "commit": "d3902a342e3e152e82f4d86e109ce88ed4da08ec",
      "tree": "98e78a85c49a736669ab1eaca552f6f513b9e79f",
      "parents": [
        "9e2a47d230ea60a20dd16a4a9f039c959528a27f",
        "b0812a30499376e09e2deb5995e998c629f24985"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 24 21:17:08 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 21:17:11 2017 +0000"
      },
      "message": "Merge \"Introduce Fonts Content Provider\""
    },
    {
      "commit": "f5c6893dd030941d803772fa0682a79610081e20",
      "tree": "f94ec36d5c9b2746ee22bec9e471b9a66fb18cca",
      "parents": [
        "52faea7acbad5bf9c2006db79353390ea915b18d",
        "3da84b4e3c5c7af65572304c7f1fe3fc81f6265d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 24 20:56:05 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 20:56:08 2017 +0000"
      },
      "message": "Merge \"Remove View.setTooltip/getTooltip\""
    },
    {
      "commit": "ef6be9fbdb14e9686d8b710da10142b7eb9987ac",
      "tree": "4e1a8f129f4afe4e84d0793b3ac565477d4acd15",
      "parents": [
        "5a5afca93618a3ea669693d231e050be595e7a94",
        "4d38df3cf269e36aeb816b8e563232647b8ce5dc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 24 20:44:16 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 20:44:19 2017 +0000"
      },
      "message": "Merge \"Make splitName public\""
    },
    {
      "commit": "f665a3295000941e98175ab5d2f355d4b46959ce",
      "tree": "27b6da2212a5152f08ac0280175005cb0d1d9cc7",
      "parents": [
        "a132bbd5a8651746d6fe3a4cd23e413785ed15d7"
      ],
      "author": {
        "name": "Hyunyoung Song",
        "email": "hyunyoungs@google.com",
        "time": "Mon Jan 09 15:07:26 2017 -0800"
      },
      "committer": {
        "name": "Hyunyoung Song",
        "email": "hyunyoungs@google.com",
        "time": "Tue Jan 24 12:00:02 2017 -0800"
      },
      "message": "Adds MaskableIconDrawable class to android.graphics.drawable package\n\nTest: manual test ag/1774462, cts tests ag/1813947\n\nBug: 32063838\nDesign doc: http://go/layered-icons-eng\n\n- Reads in the mask path from config.\n- If \u003cmaskable-icon\u003e is dynamically created, clip the drawable using the mask path.\n- Instead of using clipPath method, used BitmapShader for performance.\n\nChange-Id: If5b4a24127bf823477c6c5d8a81d5093501d58e7\n"
    },
    {
      "commit": "b0812a30499376e09e2deb5995e998c629f24985",
      "tree": "bb7bc8050fff97d57fe50b718b618977c07901ce",
      "parents": [
        "2cff9319e8d37c9ee5527326da7a778137b917b8"
      ],
      "author": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Thu Oct 20 10:42:13 2016 +0100"
      },
      "committer": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Tue Jan 24 19:32:09 2017 +0000"
      },
      "message": "Introduce Fonts Content Provider\n\nThis change exposes to developers the ability to request fonts\nfrom a provider via Typeface.\n\nUntil further security is implemented, only system apps can\nprovide fonts.\n\nTest: See topic for CTS change\nChange-Id: Ic7d5e2648340ee561f4d4c2d73a673748d2af076\n"
    },
    {
      "commit": "08bbfa9498db5b521e4e648a30cc1032e89022bc",
      "tree": "126e5cf6a55cec0fefec640faded4183a1582aa0",
      "parents": [
        "59138c00043f3cfe185b405e86871e7efb83d4d3",
        "824413871a30ad0794bc62a42e4bfcdfa2d02115"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 24 19:19:15 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 19:19:18 2017 +0000"
      },
      "message": "Merge \"TIF: Add new TvContract fields for guide view on launcher\""
    },
    {
      "commit": "59138c00043f3cfe185b405e86871e7efb83d4d3",
      "tree": "9704769333100f046e61daf40c8385888710f8c3",
      "parents": [
        "e19a36ec12e5e4472de2746e3db6dfcdef1ee7cf",
        "e0712b2661e5ec14fdd0ddf91dc42367d3598dc0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 24 19:15:27 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 19:15:30 2017 +0000"
      },
      "message": "Merge \"Add intent to browse recording schedules\""
    },
    {
      "commit": "4bd7abe72a647ceb2175a4fe66aa640815c116f8",
      "tree": "e79a1206ef7b456410bdaf0fa7e0d43f56ddf1f0",
      "parents": [
        "3b8eaf3f3ca62a70b062adfd16a92e1c8d81df09"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Jan 11 09:58:58 2017 -0800"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Tue Jan 24 11:05:15 2017 -0800"
      },
      "message": "Camera2: Combine API for deferred surface and shared surface\n\n- Unhide API to enable sharing surfaces via OutputConfiguration.\n- Combine the APIs for deferred surface and shared surfaces so that\n  same functions can be used for both use cases.\n  1. setDeferredSurface becomes addSurface.\n  2. finishDeferredConfiguration becomes finalizeOutputConfiguration.\n- Better documentation on shared surface use cases.\n\nTest: Camera CTS, and preview/video/capture with GCA\nBug: 33777818\nChange-Id: I528b221492e07888a2da96658aaf8e7b9c4d1640\n"
    },
    {
      "commit": "4d38df3cf269e36aeb816b8e563232647b8ce5dc",
      "tree": "effb1a788aa1964c39d867db16e1a0c8cbc6536e",
      "parents": [
        "316c2f207914da455a8d610aee6e4bc60e5c8f3a"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Jan 24 11:02:48 2017 -0800"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Jan 24 11:02:48 2017 -0800"
      },
      "message": "Make splitName public\n\nI always forget to do this ...\n\nTest: Build application that uses this attribute\nChange-Id: I27b23791dfdd3c0eb1a4e172dec8de93ab0eb3f2\n"
    }
  ],
  "next": "02a4fb66ca6634d4e09f264ac866acff5533c283"
}
