)]}'
{
  "log": [
    {
      "commit": "6ed45d8cd33c297e608aba94fc1f61dace7a7cca",
      "tree": "7d62835183a39a490ad2b518b27cdf6c1c232cdf",
      "parents": [
        "556897f7018e1b231d6200e21dd45657f180a63c"
      ],
      "author": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Sun Jan 22 13:52:51 2017 -0800"
      },
      "committer": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Mon Feb 06 12:50:55 2017 -0800"
      },
      "message": "CompanionDeviceManager\n\nThis introduces an API for apps that support companion devices to provide a\nmore streamlined flow for pairing and setting up the device\n\nBug: 30932767\nTest: Using a toy app, invoke the newly introduced API (CompanionDeviceManager),\n and go through the flow. Ensure filtering works, and device is returned to\n the calling app. Ensure the calling app can pair to the selected device.\nChange-Id: I0aeb653afd65e4adead13ea9c7248ec20971b04a\n"
    },
    {
      "commit": "0f4928f1f73407485d6d94beda1dba1a2360ebbf",
      "tree": "423b3d3f2a1a51981a7b7f0fdc7575482b706f36",
      "parents": [
        "21c8595d764bf6cbf2a1b59715c85ca211240ed4"
      ],
      "author": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Feb 02 20:02:51 2017 -0800"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Feb 06 04:02:35 2017 +0000"
      },
      "message": "Refactoring of auto fill - lifecycle, auth, improvements\n\n1. Move management of the remote fill service in a dedicated\n   class that abstracts away the async and ephemeral nature\n   of the binding.\n\n2. Update auth to move fingerprint out of the platform and\n   allow response and dataset auth.\n\n3. Cleaned up the fill and save callback classes.\n\n4. The UI is now shared among all sessions and cleaned up.\n\n5. Reshuffled the remote callbacks to have cleaner separation.\n\n6. Cleaned up and tightened the reponse and dataset classes.\n\n7. Added API to support communicationn with intent based auth.\n\nTest: CTS + manually\n\nbug:31001899\n\nChange-Id: Idc924a01d1aea82807e0397ff7293d2b8470d4d6\n"
    },
    {
      "commit": "27fcd9c97a2ceb50bab026237390207e5ee9e290",
      "tree": "d3860272f2978e1cef6afadf9f68f99afe806e53",
      "parents": [
        "669b1d6bfe2d737cbd69f75d32378f7e6cab0c30"
      ],
      "author": {
        "name": "Phil Weaver",
        "email": "pweaver@google.com",
        "time": "Fri Jan 20 15:57:24 2017 -0800"
      },
      "committer": {
        "name": "Phil Weaver",
        "email": "pweaver@google.com",
        "time": "Tue Jan 31 14:27:09 2017 -0800"
      },
      "message": "Accessibility can capture fingerprint gestures\n\nBug: 27148522\nTest: Unit tests for two new classes in this CL, CTS in\nlinked CL.\nChange-Id: Icb5113e00b1f8724814263b3cc7f72fe4a6f0b41\n"
    },
    {
      "commit": "67024f1b8feac1f59fff6a123f45f18a70e80e4f",
      "tree": "08f14fe708c46cc5c13766b33b7eb497ed119878",
      "parents": [
        "6675bbf093e2d9fdb620ed42602dde2a7902e8ce",
        "c565e1d3cea6f8db4fa0371b3cdb9fe11dbf4483"
      ],
      "author": {
        "name": "Abodunrinwa Toki",
        "email": "toki@google.com",
        "time": "Mon Jan 30 19:12:46 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 30 19:12:50 2017 +0000"
      },
      "message": "Merge \"Implement TextClassification system service.\""
    },
    {
      "commit": "7d670b4f738df436ba8025ee2ae360ce070c2a7f",
      "tree": "58d9461c2f4117378b1c6c0d4de6ee711de61520",
      "parents": [
        "3bec1cf5a57012407d0261533232e531a115a994",
        "eabc9e95768e7ac9acc3b32dc9ac2edf99c9e2c5"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 27 19:42:56 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 27 19:42:59 2017 +0000"
      },
      "message": "Merge \"OMS: introduce the OverlayManagerService\""
    },
    {
      "commit": "fca7aac5ecd995085b71a4d90b4862f68fbaeb45",
      "tree": "9589533ab024714d5b6fcda9a13919d203698559",
      "parents": [
        "9e77aefe9ce2c3caa8c0daebf21c86088e10b951"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Jan 26 18:47:14 2017 -0800"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Jan 26 18:47:14 2017 -0800"
      },
      "message": "Work around clang-tidy segmentation fault.\n\nThis should affect only builds that call clang-tidy.\nWithout this change, clang-tidy has segmentation fault\nwhen compiling several files in the incident_* directories.\n\nBug: 34740546\nTest: build with WITH_TIDY\u003d1 and\nDEFAULT_GLOBAL_TIDY_CHECKS\u003d\"*,-readability-*,-google-readability-*,-google-runtime-references\"\n\nChange-Id: Idfd46f36c01ccdd401eb54b750bc9d962c29ddeb\n"
    },
    {
      "commit": "eabc9e95768e7ac9acc3b32dc9ac2edf99c9e2c5",
      "tree": "f4621e85646f090e0adf1643d3d4ef24ab51e721",
      "parents": [
        "dacf5e522e67fc1576f5362c372a8159c88423a4"
      ],
      "author": {
        "name": "Mårten Kongstad",
        "email": "marten.kongstad@sonymobile.com",
        "time": "Tue Dec 15 16:40:23 2015 +0100"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Jan 26 17:04:53 2017 -0800"
      },
      "message": "OMS: introduce the OverlayManagerService\n\nAdd a new system service to manage Runtime Resource Overlays. This will\noffload the PackageManagerService and allow administration of overlay\npackages while affected packages continue to execute.\n\nOverlays can be enabled or disabled during runtime. Running applications\nwill re-create their ResourcesImpl objects and restart their activities\nvia the usual activity life cycle.\n\nThe order in which a set of overlays is loaded may also be changed\nduring runtime. The underlying mechanics are the same as for when an\noverlay is enabled or disabled.\n\nWhen an overlay changes state, e.g. becomes enabled, the\nOverlayManagerService will broadcast one of the new intents\nandroid.intent.action.OVERLAY_ADDED, *_CHANGED, *_REMOVED or\n*.OVERLAYS_REORDERED.\n\nClients that wish to read information about overlays for users other\nthan themselves are required to hold the\nandroid.permission.INTERACT_ACROSS_USERS_FULL permission. This mirrors\nthe protection level of PackageManager.getPackageInfo.\n\nClients that wish to change the information are required to\nhold the permission android.permission.CHANGE_OVERLAY_PACKAGES.\n\nEach pair of overlay package and corresponding target package is\nrespresented by a new OverlayInfo class. This class mirrors the\nexisting PackageInfo class.\n\nOverlay packages are handled per Android user. The data is persisted in\n/data/system/overlays.xml.\n\nCo-authored-by: Martin Wallgren \u003cmartin.wallgren@sonymobile.com\u003e\nSigned-off-by: Zoran Jovanovic \u003czoran.jovanovic@sonymobile.com\u003e\nBug: 31052947\nTest: run tests from \u0027OMS: tests for OverlayManagerService\u0027\nChange-Id: I15325e173193df3240b8dc0a58c852fd7a3d5916\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": "2741442324618804cca953e30251864142e6302d",
      "tree": "73cc677fcff49d36e8f903d96e16a2112700bd89",
      "parents": [
        "a07e5312ccc21dffbfeecee17e5c859e0cb952d1",
        "64057ab972674ac0105af9e3a7003416f9a9c823"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Thu Jan 26 01:46:06 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 26 01:46:06 2017 +0000"
      },
      "message": "Merge \"Adding Dynamic ImsService Binding (1/3)\" am: 8e6b13a1c0\nam: 64057ab972\n\nChange-Id: I901c72a38b522c190e849de55078036adc80d8b6\n"
    },
    {
      "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": "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": "b7cab6a19096458a7fafa905eed52db83759b6c6",
      "tree": "2afce756d27e0d5efd92e6f9ec3ca35a084cc336",
      "parents": [
        "b08655764bea5ab0c2042c0cf59d4b2a602f6584",
        "6e2b01ce75fb1d5647d5d788d8a5644c30cb3068"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 25 01:16:28 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 25 01:16:32 2017 +0000"
      },
      "message": "Merge changes from topic \u0027bisto-request\u0027\n\n* changes:\n  Allow privileged app to set media key event listener\n  Allow privileged app to set volume key long-press listener\n"
    },
    {
      "commit": "d9793989834ec7dd3dfe645c6bfba50978c16253",
      "tree": "fee409cb03b67e511341d9f219be2722008acd18",
      "parents": [
        "454a9777b84431ad0f3492477d197390eb491508",
        "823287d28ed75f96cee31cf465220fcbcbc5c7ac"
      ],
      "author": {
        "name": "Badhri Jagan Sridharan",
        "email": "badhri@google.com",
        "time": "Tue Jan 24 23:46:20 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 23:46:25 2017 +0000"
      },
      "message": "Merge \"Refactor UsbPortManager to use the binderised USB HAL\""
    },
    {
      "commit": "a393ff7dc7e7e7002a400d37868e0d6c14507b43",
      "tree": "437078580339282863067237e616782a6b33f07c",
      "parents": [
        "274907e729c45a112e1215a97a7ef43926053da9",
        "865303fce57b968f5bd7efb4dd23ccb1a3747b93"
      ],
      "author": {
        "name": "Shreyas Basarge",
        "email": "snb@google.com",
        "time": "Tue Jan 24 22:02:24 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 24 22:02:28 2017 +0000"
      },
      "message": "Merge \"API to select backup transport\""
    },
    {
      "commit": "6e2b01ce75fb1d5647d5d788d8a5644c30cb3068",
      "tree": "83df9116a274617897b06369a3c0fc8d9e3b34ba",
      "parents": [
        "5026936e49540449165fd5881231f8970a29ea91"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Thu Jan 19 16:33:14 2017 -0800"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Tue Jan 24 09:41:54 2017 -0800"
      },
      "message": "Allow privileged app to set media key event listener\n\nIf the media key listener is set, the listener will receive the media key\nevents before any other sessions, but after the global priority session.\nIf the event is handled by the listener, other sessions cannot get the event.\n\nPrivileged app needs permission android.permission.SET_MEDIA_KEY_LISTENER\nto set the listener.\n\nBug: 30125811\nChange-Id: I2b2cf4ac7873b70899194701c6921990dcb9de02\n"
    },
    {
      "commit": "5026936e49540449165fd5881231f8970a29ea91",
      "tree": "67fc01a29dbe5ebd1132e17e4151eeabee62ad4c",
      "parents": [
        "70c5c30afa1379d4c3c856f08a3b5a0fdb5f9d92"
      ],
      "author": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Fri Dec 23 11:22:02 2016 +0900"
      },
      "committer": {
        "name": "Jaewan Kim",
        "email": "jaewan@google.com",
        "time": "Tue Jan 24 09:41:43 2017 -0800"
      },
      "message": "Allow privileged app to set volume key long-press listener\n\nIf the volume long-press listener is set, the listener will receive\nthe volume key long-presses instead of chaging the volume.\n\nPrivileged app needs permission\nandroid.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER to set the listener.\n\nBug: 30125811\nChange-Id: I5e8fafbb950e5e11522da0f14004648d0877bf3e\n"
    },
    {
      "commit": "865303fce57b968f5bd7efb4dd23ccb1a3747b93",
      "tree": "d4fac32c678adc66ce81fc77c252a41b00107f5f",
      "parents": [
        "1628b97e54d7f56352d7f3ad9c6b4166d56082a5"
      ],
      "author": {
        "name": "Shreyas Basarge",
        "email": "snb@google.com",
        "time": "Fri Jan 13 14:48:56 2017 +0000"
      },
      "committer": {
        "name": "Shreyas Basarge",
        "email": "snb@google.com",
        "time": "Tue Jan 24 17:28:48 2017 +0000"
      },
      "message": "API to select backup transport\n\nThis cl adds an API to select a backup\ntransport by its component name and\nreceive a callback when BackupManager\nis bound to the transport. Calling this API\nwill make BackupManager bind to the transport\nif it isn\u0027t already bound to it.\n\nAlso fixes the issue where BackupManager would\ndetect only one transport per package.\n\nRef: go/backup-transport-switching\n\nBug: 33616220\nTest: Manually tested. GTS tests will be put up shortly.\n\nChange-Id: I8c23bdbb84ceb05eb1fad9b3a8b9c4441cb06c74\n"
    },
    {
      "commit": "823287d28ed75f96cee31cf465220fcbcbc5c7ac",
      "tree": "1a1767aa62eed4b2ee6ea7fbef3861aab9aa3690",
      "parents": [
        "29d20fc0f9d185ce356a984468142ae5c63e911b"
      ],
      "author": {
        "name": "Badhri Jagan Sridharan",
        "email": "Badhri@google.com",
        "time": "Mon Jan 23 17:13:15 2017 -0800"
      },
      "committer": {
        "name": "Badhri Jagan Sridharan",
        "email": "Badhri@google.com",
        "time": "Mon Jan 23 17:13:15 2017 -0800"
      },
      "message": "Refactor UsbPortManager to use the binderised USB HAL\n\nMove to a USB HAL to handle type-c ports as upstream is\nconsidering in merging a generic type-c interface to mainline\nkernel. However, the new sysfs interface can see minor changes\nin the future as the sysfs interface is sitll going to land\nin testing and it is still under review.\n\nBug: 31015010\nTest: Manually tested on Angler and sailfish for type-c role switches.\nChange-Id: I26771074c4b4f79a133e519bc6d35a4864a696d8\n"
    },
    {
      "commit": "04d72abde1efc963ebb2f145f859552e83b92d13",
      "tree": "62e2d74e3cb0d336d0d02afa4d89c650e83c4e6b",
      "parents": [
        "b334b8f0f26d93e50c07bbb90ade097025d795c1"
      ],
      "author": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Tue Jan 10 09:31:51 2017 -0800"
      },
      "committer": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Mon Jan 23 15:02:23 2017 +0000"
      },
      "message": "Expose fonts.xml via public API with a service\n\nThis change creates a new FontManagerService, in charge of providing\nfont management data. It exposes a public API to retrieve the\ninformation in fonts.xml without accessing it directly. To do this,\nit also refactors FontListParser\u0027s internal classes into a new public\nFontConfig class holding all the font data.\n\ngetSystemFonts() returns all the available information in fonts.xml\nas well as file descriptors for all the fonts. This allows us to\nshare the memory consumed by these files between all clients.\n\nBug: 34190490\nTest: See attached CTS change in topic\nChange-Id: I0e922f8bcc9a197a1988d04071eb485328d66fb7\n"
    },
    {
      "commit": "c565e1d3cea6f8db4fa0371b3cdb9fe11dbf4483",
      "tree": "3dddff584652550eb8eb7a53482cc24a79b210f4",
      "parents": [
        "e19fa20ca5a1e6f5c7fd95ed8990923a01185f92"
      ],
      "author": {
        "name": "Abodunrinwa Toki",
        "email": "toki@google.com",
        "time": "Wed Dec 14 15:38:56 2016 +0000"
      },
      "committer": {
        "name": "Abodunrinwa Toki",
        "email": "toki@google.com",
        "time": "Fri Jan 20 20:22:16 2017 +0000"
      },
      "message": "Implement TextClassification system service.\n\n- This service provides the TextClassificationManager access to the\n  classification model file.\n  See: Icb82b707c9c1b4dcb739f44d888bbc43bc3b03bb\n- This service is started at boot time.\n  See: Ie4a597bc5c6c4140afbcf7feaa9dd237a3fd5fef\n\nTest: Manually tested. Also see: Ic2a5eceeaec4cd2943c6c753084df46d30511fee\nBug: 32503402\nChange-Id: Ic428d00f291e268211866b3fc6b7acbc3eb04e1e\n"
    },
    {
      "commit": "389b853bc88fd77a7dceecbb9fb02c0c05d90e6a",
      "tree": "5b04e5c30c0f3bdc4e38b7da6060841c844adfbc",
      "parents": [
        "1fee3a64b7c673364a6288068fff5fd049b7e9b4"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Dec 02 12:17:21 2016 -0700"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Jan 18 19:08:35 2017 +0900"
      },
      "message": "DO NOT MERGE: Switch over to new \"time.android.com\" NTP pool.\n\nAlso add logging to measure success/failure details.\n\nTest: builds, boots, and NTP fix obtained\nBug: 32969463\n\n(cherry picked from commit d3f689bf14a05de735b5cc92dcf20e7226c78690)\n\n(cherry picked from commit dda938a698a17b2943bbe78f6631a26dedabf28a)\n\nChange-Id: I67e4f54f8f2ec69b6522fbbe06ef196b1084f44a\n"
    },
    {
      "commit": "40e4645e6e564b962bb73c85c5325ec54ad34cc1",
      "tree": "f922e3a77dd5c52809942b82109ffd9ee2ac7f86",
      "parents": [
        "7d13f29b128b1cc572025a5f248559bb50c4be3a"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Fri Dec 16 18:38:53 2016 -0800"
      },
      "committer": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Tue Jan 17 11:45:41 2017 -0800"
      },
      "message": "Rewrite FingerprintService to use HIDL 2.1\n\nBug: 33199080\nTest: Fingerprint enroll, remove, unlock, fingerprint arbitration.\n\nChange-Id: I8b98236ba81f053527ee74c8a189af1adfd17d55\n"
    },
    {
      "commit": "6d553874bed06280766ae24ea605f9bbde3f5a4a",
      "tree": "4ba8338d6c7850b177104dab4ec0ea6b72016cff",
      "parents": [
        "e961992ed313ea1c733500d9b66f1af5349b59b2"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 08 17:13:25 2016 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Jan 10 12:50:47 2017 -0800"
      },
      "message": "YAMAFFR - Yet Another Major AutoFill Framework Refactoring\n\n- Explicitly split View methods into Assist and AutoFill methods, rather\n  than use an overloaded method that takes flags.\n- Simarly, renamed ASSIST_FLAG_SANITIZED_TEXT and\n  ASSIST_FLAG_NON_SANITIZED_TEXT flags to\n  AUTO_FILL_FLAG_TYPE_FILL and AUTO_FILL_FLAG_TYPE_SAVE respectively.\n- Created a AutoFillUI class to host the auto-fill bar and other UI\n  affordances.\n- Moved the temporary notifications to AutoFillUI (eventually that\n  class will host the real UI).\n- Moved FillData to android.app.view.autofill package.\n- Split IAutoFillCallback in 2 (IAutoFillAppCallback and\n  IAutoFillServerCallback, residing at the app and system_server\n  respectively), so service cannot fill the app directly (which lets\n  the framework control the UI).\n- Moved assist\u0027s IResultReceiver to AutoFillServiceImpl so\n  system_server can act as a mediator between the AutoFillService\n  implementation and the app being auto-filled.\n- Replaced FillData and FillableInputFields by a bunch of new objects:\n  - FillResponse contains a group of Datasets, each representing\n  different values\n    that can be used to auto-fill an activity (for example, different\n    user accounts), optional id of fields the service is interested\n    to save, and an optional bundle for service-side extras.\n  - Dataset contains a name, Fields, and an optional bundle for\n    service-side extras.\n  - Fields contain an AutoFillId (parcelable) and a value (Bundle)\n- Changed the temporary notifications to emulate the new workflow:\n  - Initial notification requests the auto-fill data but do not\n    auto-fill.\n  - Once service calls back, a new notification is shown with the\n    results.\n  - Then if the user selects a dataset, the activity is auto-filled\n    with it.\n  - It also shows a notification to emulate what can be saved.\n- Created an VirtualViewDelegate for views that uses a virtual\n  hierarchy for assist data.\n- Added new methods on ViewStructure to add children with virtual ids.\n- Added 2 methods on View to support auto-fill:\n  - autoFill(Bundle) to auto-fill the view.\n  - getAutoFillType() to return how the view can be auto-filled.\n- AutoFillType defines the input fields that support auto-fill:\n  - Text fields (like EditText)\n  - Toggle fields (like CheckBox)\n  - Lists (like RadioGroup)\n- AutoFillType can also have a sub-type representing its semantic (for\n  now only text fields have it, and it\u0027s the same as getInputType()).\n- etc :-)\n\nBug: 31001899\nTest: manual verification\nChange-Id: I2dd2fdedcb3ecd1e4403f9c32fa644cb914e186f\n"
    },
    {
      "commit": "9f7fd6c734527b33e40a9f0d8199c961d52694bb",
      "tree": "50c01c90b2910a26a61c420a61b83ea1758d2906",
      "parents": [
        "955da4804e7cc940e7aed93cb2ab1774e5f1cb03",
        "03533715295154f0bb66f84b7c25832d21156805"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Tue Jan 10 16:20:10 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 10 16:20:13 2017 +0000"
      },
      "message": "Merge \"API improvements for creating NotificationChannels\""
    },
    {
      "commit": "8dedad31f7fa604028ee6d28963bcc564e76c467",
      "tree": "56b0761b6cc37c6e56b639358edde3d7efb6db00",
      "parents": [
        "bd439dcef072fd9a853a6bc9055cfa347ad7c969"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Jan 09 18:21:21 2017 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Jan 09 22:30:58 2017 -0700"
      },
      "message": "Wire up storage stats API to installd.\n\nNow that installd has the implementation details we need, we can wire\nup the public APIs to use them.\n\nShuffle APIs around a bit so that StorageStats can be reused for both\nUID and UserHandle results, and rename StorageSummary to\nExternalStorageStats.  Provide getTotalBytes() and getFreeBytes() as\nfirst-class methods so we can answer those questions quickly without\npaying the cost of measuring external storage details.\n\nCurrent costs on a typical device with a test account after flushing\ndentry caches:\n\nqueryStatsForUid() manual: 6922ms\nqueryStatsForUid() quota: 525ms\n\nqueryStatsForUser() manual: 1686ms\nqueryStatsForUser() quota: 113ms\n\nqueryExternalStatsForUser() manual: 42ms\nqueryExternalStatsForUser() quota: 2ms\n\nFor verification purposes, a new \"fw.verify_storage\" system property\ncan be set to compute both manual and quota statistics, and log any\ndiscrepancies.\n\nTest: builds, boots\nBug: 27948817, 32206268\nChange-Id: I4ea3df3372a7379aa8cf4c20c44120c8f0702c15\n"
    },
    {
      "commit": "03533715295154f0bb66f84b7c25832d21156805",
      "tree": "c4e1d1632a5c86e1a22c97152dc1a2d019b4fb3e",
      "parents": [
        "92b504cb9e3feb94d1bcd7e987e0ba97ee5d0fc7"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Thu Jan 05 10:30:07 2017 -0500"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Fri Jan 06 16:13:04 2017 -0500"
      },
      "message": "API improvements for creating NotificationChannels\n\nRemove listener for aysnchronous operation.\nAllow multiple channel creation from a single call.\nSilently no-op for creating existing channels.\n\nTest: runtest systemui-notification\nChange-Id: Ibc1340d21efa0c12d126bee437adcbb99141e86a\n"
    },
    {
      "commit": "e8cece9f2010388e02d8f4b3150f25168f8b7d76",
      "tree": "d71c47bdfd720ca9c7d2bf35a24c82c2c2de9ba0",
      "parents": [
        "c9facc0a1f6f3facb7d67ddae9b8a04af78dad0c"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jan 04 11:33:33 2017 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 05 15:39:16 2017 -0700"
      },
      "message": "Initial API shape for storage statistics.\n\nThis API is designed to provide both UID-level stats and overall\nsummary data for a given storage device, as identified by UUID.\n\nThe use of UID-level granularity might appear a bit clunky, but it\nmatches other usage statistics (such as network and battery), and it\nallows us to implement it using an extremely fast quota kernel\nfeature.\n\nA future CL will wire up the implementation to installd.\n\nTest: builds, boots\nBug: 32206268\nChange-Id: I7b51877682d0370c2402c19346f57809f0e7ac53\n"
    },
    {
      "commit": "48e6745a08e6b89a91afd43809948c47b08b0367",
      "tree": "091a46a4623b45f13ac719eea79fe173eb4173e5",
      "parents": [
        "c519b8d83ef043e01ace1b2dd2c39b1cbf57d258",
        "48738f5ad07b71066a74766a3a066dd10c45f027"
      ],
      "author": {
        "name": "Ivan Podogov",
        "email": "ginkage@google.com",
        "time": "Thu Dec 29 20:08:38 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 29 20:08:38 2016 +0000"
      },
      "message": "Rename the Bluetooth profile classes for HID Device role. am: 0afe190af5 am: 94e3d3f499 am: 91ab2e2f98\nam: 48738f5ad0\n\nChange-Id: I15651c5a6e3baf53d915626ea6c55180fefe28b5\n"
    },
    {
      "commit": "c519b8d83ef043e01ace1b2dd2c39b1cbf57d258",
      "tree": "bf3c0d2d1c054349a23383635c88d989f23c22ad",
      "parents": [
        "9d621c4977df2319294843b7989a643c7bfcf720",
        "a9c92c2442db2775173136148f09f8e93385543e"
      ],
      "author": {
        "name": "Hemant Gupta",
        "email": "hemantg@codeaurora.org",
        "time": "Thu Dec 29 20:07:51 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 29 20:07:51 2016 +0000"
      },
      "message": "Bluetooth: Add support for HID Device Role am: e88fd4b594 am: ee469c6fe9 am: 1ee22b7f70\nam: a9c92c2442\n\nChange-Id: I56625e00b1b6c2b7b11e4ce4dc3038072ef6c231\n"
    },
    {
      "commit": "48738f5ad07b71066a74766a3a066dd10c45f027",
      "tree": "30fdc95d18104f0c9af0f428c2706ff12fd6d477",
      "parents": [
        "a9c92c2442db2775173136148f09f8e93385543e",
        "91ab2e2f983eddee138bd7f577c5659e0e610fdc"
      ],
      "author": {
        "name": "Ivan Podogov",
        "email": "ginkage@google.com",
        "time": "Thu Dec 29 20:00:09 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 29 20:00:09 2016 +0000"
      },
      "message": "Rename the Bluetooth profile classes for HID Device role. am: 0afe190af5 am: 94e3d3f499\nam: 91ab2e2f98\n\nChange-Id: If0e072e96491020191a7742928cc90adff151342\n"
    },
    {
      "commit": "a9c92c2442db2775173136148f09f8e93385543e",
      "tree": "d904538910482bdc82a9dfda5bf14ebe22b6d5c6",
      "parents": [
        "b5a5a516237a42c17df9366cbf7e6a2b2c8465d1",
        "1ee22b7f7050db257572d9c1a2cb0355c2881c6c"
      ],
      "author": {
        "name": "Hemant Gupta",
        "email": "hemantg@codeaurora.org",
        "time": "Thu Dec 29 19:59:28 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 29 19:59:28 2016 +0000"
      },
      "message": "Bluetooth: Add support for HID Device Role am: e88fd4b594 am: ee469c6fe9\nam: 1ee22b7f70\n\nChange-Id: Ia82f834d4d2ad800574bb0317f4fb3b3786972fc\n"
    },
    {
      "commit": "91ab2e2f983eddee138bd7f577c5659e0e610fdc",
      "tree": "63a0300734cb0f697eda19c25c675c3b7b230e7a",
      "parents": [
        "1ee22b7f7050db257572d9c1a2cb0355c2881c6c",
        "94e3d3f499b8e6eaf25db3dc4975004960043081"
      ],
      "author": {
        "name": "Ivan Podogov",
        "email": "ginkage@google.com",
        "time": "Thu Dec 29 19:46:55 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 29 19:46:55 2016 +0000"
      },
      "message": "Rename the Bluetooth profile classes for HID Device role. am: 0afe190af5\nam: 94e3d3f499\n\nChange-Id: I97ff93fd2564bd76d90095f8086f79c6c6086aff\n"
    },
    {
      "commit": "1ee22b7f7050db257572d9c1a2cb0355c2881c6c",
      "tree": "93462dcbc558e1014fd83ff947672b5075b11c28",
      "parents": [
        "2c29250b443d1ed263889a19453d3d462c7fbc24",
        "ee469c6fe9a91877fa9427bc5135cbec20fe1af6"
      ],
      "author": {
        "name": "Hemant Gupta",
        "email": "hemantg@codeaurora.org",
        "time": "Thu Dec 29 19:46:08 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 29 19:46:08 2016 +0000"
      },
      "message": "Bluetooth: Add support for HID Device Role am: e88fd4b594\nam: ee469c6fe9\n\nChange-Id: Ic48911d254671d402f5a6b8198109f28e6497036\n"
    },
    {
      "commit": "94e3d3f499b8e6eaf25db3dc4975004960043081",
      "tree": "0934e86c3008070d8f10f684dab47945167f0d4a",
      "parents": [
        "ee469c6fe9a91877fa9427bc5135cbec20fe1af6",
        "0afe190af52d83c5e52fa994e53c48e33e8e3bf4"
      ],
      "author": {
        "name": "Ivan Podogov",
        "email": "ginkage@google.com",
        "time": "Thu Dec 29 19:38:41 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 29 19:38:41 2016 +0000"
      },
      "message": "Rename the Bluetooth profile classes for HID Device role.\nam: 0afe190af5\n\nChange-Id: Ib5c9b904da57048d719df504142edd3dab0e6ec3\n"
    },
    {
      "commit": "ee469c6fe9a91877fa9427bc5135cbec20fe1af6",
      "tree": "388e201c216cd4686a527ebd208c8ca27bc0e9e1",
      "parents": [
        "fd770e1cb8e08accb3b3fb0f79af1336a1ec86ed",
        "e88fd4b5940a855e961cffa36e93f844a44cd2d4"
      ],
      "author": {
        "name": "Hemant Gupta",
        "email": "hemantg@codeaurora.org",
        "time": "Thu Dec 29 19:37:58 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 29 19:37:58 2016 +0000"
      },
      "message": "Bluetooth: Add support for HID Device Role\nam: e88fd4b594\n\nChange-Id: Ic2a82d5670ffbd3046766d73ed9b180546c59169\n"
    },
    {
      "commit": "0afe190af52d83c5e52fa994e53c48e33e8e3bf4",
      "tree": "9160d8c5818a628916337193a9cc377506be9227",
      "parents": [
        "e88fd4b5940a855e961cffa36e93f844a44cd2d4"
      ],
      "author": {
        "name": "Ivan Podogov",
        "email": "ginkage@google.com",
        "time": "Fri Dec 23 11:52:21 2016 +0000"
      },
      "committer": {
        "name": "Myles Watson",
        "email": "mylesgw@google.com",
        "time": "Thu Dec 29 14:30:40 2016 +0000"
      },
      "message": "Rename the Bluetooth profile classes for HID Device role.\n\nWe already have BluetoothInputDevice class, so adding something\ncalled BluetoothHidDevice seems confusing. On the other hand,\nthe new class is designed to connect to HID Host devices, so\nnaming it BluetoothInputHost makes sense and goes in line with\nthe existing BluetoothInputDevice.\n\nThe same goes for the new constant HID_DEVICE that is just as\nconfusing to have together with the INPUT_DEVICE one.\n\nThis CL also renames the \"connection state changed\" broadcast\n(for the same reasons), declares it as an SDK constant, and also\nadds some javadoc to it.\n\nNote that BluetoothHidDeviceApp* classes remained unchanged, as\nthose correspond to the app that implements the Device (and\nconnects to the Host).\n\nTest: make\nChange-Id: I5075ca5b97db3c1dd403c2e9660eecc7380cffe2\n"
    },
    {
      "commit": "e88fd4b5940a855e961cffa36e93f844a44cd2d4",
      "tree": "dd494f6a65e8a1edd003041ffde2ec6301ea5426",
      "parents": [
        "895e2d7a405e9224515b6564ab4700aad3b0abf1"
      ],
      "author": {
        "name": "Hemant Gupta",
        "email": "hemantg@codeaurora.org",
        "time": "Fri Apr 18 11:22:45 2014 +0530"
      },
      "committer": {
        "name": "Myles Watson",
        "email": "mylesgw@google.com",
        "time": "Thu Dec 29 14:29:53 2016 +0000"
      },
      "message": "Bluetooth: Add support for HID Device Role\n\nThis patch adds the HID Device Role support in Bluetooth framework.\nAlso AIDL and callback related files for HID Device role are added\nto provide interface for third party applications to communicate with\nHID Device Service.\n\nChange-Id: Id03a362b7bcfa2e76056fa0197eaac12ce49b5a2\n"
    },
    {
      "commit": "292a6a4e9934a94eea97b018befde3baed895f7d",
      "tree": "ccef5b540cc0d4fcdde69ef86047a71462ee7681",
      "parents": [
        "fe9a2a799f0f388c7c531454b8ec964ed8497499"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Dec 01 08:32:15 2016 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Dec 21 13:58:08 2016 -0800"
      },
      "message": "Notification of playback activity\n\nAudioService keeps track of status of implementations of PlayerBase.\nAudioService\u0027s PlaybackActivityMonitor maintains a list of\n  playback configurations for each PlayerBase, and a list\n  of clients that want to receive updates about the playback.\nPlayback activity clients can query the playback configuration\n  of the system through AudioManager, or register a callback\n  for updates. For clients with MODIFY_AUDIO_ROUTING permission\n  (system), the playback configurations contain more information\n  about each player (player type, uid, pid, state), and can see\n  all players, not just the \"active\" ones. The act of stripping\n  off data about the players that is not supposed to be seen\n  by non-system clients, is referred to as \"anonymization\". It\n  is implemented in system server, so no system data is ever\n  sent to playback activity clients without system permission.\nMore information about the AudioPlaybackConfiguration is\n  available in the SystemApi (uid, pid, player type, player state).\n\nTest: run cts -m CtsMediaTestCases -t android.media.cts.AudioPlaybackConfigurationTest\nBug: 30955183\n\nChange-Id: I85997594c0378216419f5f0fdaa0714996fd3573\n"
    },
    {
      "commit": "1754d744a7a34731ffc07af1bc3dbfcb06864ab0",
      "tree": "8596241d2c9ccfb1b1748e3a5a37f2befa155a87",
      "parents": [
        "de5b027d2cbd430ef5007911cd73084c081afaab"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Mon Nov 21 17:51:35 2016 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Dec 15 11:23:05 2016 -0800"
      },
      "message": "First checkin of incident reporting.\n\nThere are a few major pieces here:\n\nincidentd\n---------\nThis daemon (started by init) runs and accepts incoming requests to take\nincident reports.  When prompted, it calls into various system services\nand fills in an IncidentProto data structure, and then writes the report\ninto dropbox.\n\nThe next steps for incidentd:\n    - Security review of SELinux policies. These will be a subset of\n      the dumpstate permissions.  Until this is done, incidentd is\n      not started at boot time.\n\nincident\n--------\nThis shell command calls into incidentd, and can initiate an incident\nreport and either capture the output or leave for dropbox.\n\nincident_report\n---------------\nThis host side tool can call adb shell with the correct parameters\nand also format the incident report as text.  This formatting code\nwas left of the device on purpose.  Right now it\u0027s pretty small, but\nas the number of fields increases, the metadata and code to do the\nformatting will start to grow.\n\nThe incident_report command also contains a workaround to let it\nwork before incidentd is turned on by default.  Right now, it is\nimplemented to call adb shell dumpsys \u003cservice\u003e --proto directly,\nwhereas in the future it will go through the full incidentd flow.\n\nincident_section_gen\n--------------------\nA build-time tool that generates a stripped down set of information\nabout the fields that are available.\n\nlibincident\n-----------\nThis library contains the code to connect to incidentd, and the\nmeta proto definitions that are used by the framework protos.\nThe basics are here now, but they are not fully fleshed out yet.\nThe privacy.proto file contains annotations that can go in the\nproto file that we will later use to filter which fields are\nuploaded, and which are used by local sources.  For example, a\ndevice in a test lab is safe to upload much much more information\nthan a real user.  These will share the same mechanism, but the\nuser\u0027s output will be filtered according to these annotations.\n\nframeworks/core/proto\n---------------------\nThese .proto files contain the definitions of the system\u0027s\noutput.  There is one master android.os.IncidentProto file that\nis the top level of an incident report, but some other services\n(notification, fingerprint, batterystats, etc) will have others\nthat are used directly by the logging mechanism.\n\nOther files which are shared by several of the services also go\nhere, such as ComponentName, Locale, Configuration, etc.  There\nwill be many more.\n\nThere is also a first iplementation of a dump method handling\n--proto in the fingerprint service.\n\nIncidentManager\n---------------\nThe java API to trigger an incident report.\n\nTest: Not written yet\nChange-Id: I59568b115ac7fcf73af70c946c95752bf33ae67f\n"
    },
    {
      "commit": "ab99c11c55c82e39a601a0b6f59005011f9fa109",
      "tree": "94f09bcaefeb06033dc86eca3ab51ea9bfa202a1",
      "parents": [
        "9cf894cd4ebf5cc6a07c7c7b9a2f9cd9298c1b11",
        "2d895c3efd625e09e9f2cc4d0c7131b34f52f154"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu Dec 15 17:59:36 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 15 17:59:39 2016 +0000"
      },
      "message": "Merge \"ShortcutManager: direct pin shortcut support.\""
    },
    {
      "commit": "bf46e6b2e15cf7bb790c0fd13126640f26c11a9e",
      "tree": "9c27e3afc9137766ba833f3fe2b5255b4446e84f",
      "parents": [
        "9ed3a080e866c087af725e0b6abda026c83a9aa8",
        "e9be5d908d32d67db9968a9ff12c37b579149bf7"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Dec 14 15:22:43 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 14 15:22:43 2016 +0000"
      },
      "message": "Copy core-junit files into legacy-test. am: cd7c34d8bf am: 98e609d556 am: c3650beee5\nam: e9be5d908d\n\nChange-Id: I826ea0752c64b39f3cb9c96a6a33c0f2c4fad98b\n"
    },
    {
      "commit": "e9be5d908d32d67db9968a9ff12c37b579149bf7",
      "tree": "3569cd4f77ade93ad673e71ab766720bdb734bfe",
      "parents": [
        "61a967a3f07f5b78737d6fffb93e88c950ac8ad6",
        "c3650beee54c4406d307449548738c78d56fd099"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Dec 14 15:15:51 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 14 15:15:51 2016 +0000"
      },
      "message": "Copy core-junit files into legacy-test. am: cd7c34d8bf am: 98e609d556\nam: c3650beee5\n\nChange-Id: I04560b5982651d175a268056f32eb36980ef2259\n"
    },
    {
      "commit": "c3650beee54c4406d307449548738c78d56fd099",
      "tree": "72d06da6cb2c0a8a6e21d7d472d9626635bc23b2",
      "parents": [
        "49a848e46fcf30d768c677546dfe32fdc84509e0",
        "98e609d55607e4ff0c669398d33ab45ba31d6153"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Dec 14 15:09:22 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 14 15:09:22 2016 +0000"
      },
      "message": "Copy core-junit files into legacy-test. am: cd7c34d8bf\nam: 98e609d556\n\nChange-Id: I4eb422f8fe217e5528e632d1f85c1303604b0d64\n"
    },
    {
      "commit": "98e609d55607e4ff0c669398d33ab45ba31d6153",
      "tree": "1b6307ebe004e8c3ea8b427c2d56214127785aaa",
      "parents": [
        "5d53a925a17b0629e1e8ddded614a88554b2f92a",
        "cd7c34d8bf4302e640c742d7bb94107cc1505aff"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Dec 14 15:02:16 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 14 15:02:16 2016 +0000"
      },
      "message": "Copy core-junit files into legacy-test.\nam: cd7c34d8bf\n\nChange-Id: I672fa4b006b04db5a4c8f86793f1c891bc55754a\n"
    },
    {
      "commit": "cd7c34d8bf4302e640c742d7bb94107cc1505aff",
      "tree": "6cdb06c518b7dcff1be867ce2a86bf5e20ccd4e3",
      "parents": [
        "3e24af3eb760afafdc1a704a0c3e9f42db2e6475"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Dec 12 16:35:36 2016 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Dec 14 14:19:08 2016 +0000"
      },
      "message": "Copy core-junit files into legacy-test.\n\nThe legacy-test directory contains part of the Android API and\nso must maintain backwards compatibility. The junit classes that\nare in the API are copied here to ensure that they do not change\nwhen external/junit is upgraded.\n\nBug: 30188076\nTest: make checkbuild and checked legacy-test contents\nChange-Id: I6c263afc16c06abfd027334be51a41422239a189\n"
    },
    {
      "commit": "d1c710d5cff55b632e91d95cdba158bbc3879bc8",
      "tree": "7d60dd7d5534a00dfd9fa666c74eded24a628f7a",
      "parents": [
        "b2e8690507f64f935d20a7ce75cefbaf6cf2c160",
        "4c47adef60ca0326bdbe124dfdd335382e5c0787"
      ],
      "author": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Wed Dec 14 10:51:33 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 14 10:51:33 2016 +0000"
      },
      "message": "DO NOT MERGE [DPM] Management and retrieval of network logs\nam: 4c47adef60\n\nChange-Id: I39486c9d6116023f1ee9bd576b7fcd0fe20023a1\n"
    },
    {
      "commit": "b2e8690507f64f935d20a7ce75cefbaf6cf2c160",
      "tree": "b24164c2c50011d024ad3decd4b7f8b03f4a0578",
      "parents": [
        "7efe982f0f92e679209e7cd2cd5b39e8958c7e73",
        "c3abd34cfed63d5b71366901d19f6d9cd8319306"
      ],
      "author": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Wed Dec 14 10:50:36 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 14 10:50:36 2016 +0000"
      },
      "message": "DO NOT MERGE [DPM] DO can start network logging and listen for events\nam: c3abd34cfe\n\nChange-Id: I7952d67d22a141040f3ee3ac2b6c3aa2cfccbbf7\n"
    },
    {
      "commit": "2d895c3efd625e09e9f2cc4d0c7131b34f52f154",
      "tree": "800554eac2ef7e92319221afa71eb68d1c143ecc",
      "parents": [
        "54365465897a0fbb2d61c3fb2460698384328ad4"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Dec 02 15:48:40 2016 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Dec 13 09:56:03 2016 -0800"
      },
      "message": "ShortcutManager: direct pin shortcut support.\n\nTest: Manual test and all the unit tests:\nadb shell am instrument -e class com.android.server.pm.ShortcutManagerTest1 -w com.android.frameworks.servicestests\n... to test8\n\nBug 32908854\n\nChange-Id: I11b81656959cccfb4efa83f08380b915e6eb84a6\n"
    },
    {
      "commit": "4c47adef60ca0326bdbe124dfdd335382e5c0787",
      "tree": "88884ded0fe7a064c3f8da5baeb532ee87f6676b",
      "parents": [
        "c3abd34cfed63d5b71366901d19f6d9cd8319306"
      ],
      "author": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Wed Oct 12 16:40:06 2016 +0100"
      },
      "committer": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Tue Dec 13 17:19:22 2016 +0000"
      },
      "message": "DO NOT MERGE [DPM] Management and retrieval of network logs\n\nThis CL follows up on ag/1530343 and adds:\n1) Various network events.\n2) Retrieval method in DPM and APIs in DeviceAdminReceiver.\n3) Extension of NetworkLogger and it\u0027s NetworkLoggingHandler.\n\nTest: runtest --path frameworks/base/services/tests/servicestests/src/com/android/server/devicepolicy/NetworkEventTest.java\nBug: 29748723\nChange-Id: I42a1a477e7c75c109a3982f809c22732b814e8b2\n"
    },
    {
      "commit": "c3abd34cfed63d5b71366901d19f6d9cd8319306",
      "tree": "4d70254c61562222b7e993ca80e0c9a77c3603e4",
      "parents": [
        "c5700918aae3e8dee10418adfa9f3439724787d5"
      ],
      "author": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Wed Oct 12 14:59:26 2016 +0100"
      },
      "committer": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Tue Dec 13 17:15:38 2016 +0000"
      },
      "message": "DO NOT MERGE [DPM] DO can start network logging and listen for events\n\nThis CL adds:\n1) Setter and getter in DPM to manipulate logging switch (retrieval\nmethod to come in a subsequent CL(s)).\n2) A way for DPM to register to listen for events.\n3) Skeleton of NetworkLogger class (more to come in subsequent CL(s)).\n\nBug: 29748723\nChange-Id: I5c04662ccc6febd2ba294b0eaca1ed1da9c16e47\n"
    },
    {
      "commit": "c5b56942024a3211234cf35fed44e3e732143947",
      "tree": "a9ba3717cad5816144e4f795a728d71a7b5c375a",
      "parents": [
        "3e51510960e78b060bc69bd1bdcc1fa31898e38c",
        "7797e545239e81a9216994527badcc98178ebfcc"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Dec 10 16:29:23 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Dec 10 16:29:23 2016 -0700"
      },
      "message": "Merge commit \u00277797e545239e81a9216994527badcc98178ebfcc\u0027 into dec10\n\nChange-Id: I430a39241bd2d278eaf1e01b89be3ad368789f6d\n"
    },
    {
      "commit": "9ff67746e60ce9e49d7c21e2af087c081873c544",
      "tree": "ba26df0b146b2aef763d994b0487f5313dbb6405",
      "parents": [
        "6952303c285028ba00c76f10865fa518eaca9dd2",
        "104fd011b22b62e7bf45ccbd82b4d9537631e7c7"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Dec 10 23:07:59 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Dec 10 23:07:59 2016 +0000"
      },
      "message": "Merge \"Final push of installd to Binder; goodbye socket!\" am: 1950377f91\nam: 104fd011b2\n\nChange-Id: I4b2ae2329e8842def8682199c5ee8544c22c2be4\n"
    },
    {
      "commit": "104fd011b22b62e7bf45ccbd82b4d9537631e7c7",
      "tree": "850824aa556500bdf01611b7a4308e4fac192b1f",
      "parents": [
        "dc017c4e49a8c9899d2115d7a2a519107a83aa67",
        "1950377f9163c1bd84832c960bbed73b31c2fe85"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Dec 10 23:01:59 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Dec 10 23:01:59 2016 +0000"
      },
      "message": "Merge \"Final push of installd to Binder; goodbye socket!\"\nam: 1950377f91\n\nChange-Id: If10d4f4aafa68b78ddd9a98e8699fe008bbda49b\n"
    },
    {
      "commit": "740f523b2571d1c4eb4a954e1faedea45dd7fa53",
      "tree": "dc80945193278aee84829e99139af8e336c68cb4",
      "parents": [
        "d7b144a5e9dc1d4eead6ee3b66afd63b4bec8c67"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Dec 09 14:31:26 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Dec 09 15:30:34 2016 -0700"
      },
      "message": "Final push of installd to Binder; goodbye socket!\n\nMove last two straggling installd commands to Binder and destroy the\nsocket-based communication channel forever.\n\nTest: builds, boots, apps install fine, pre-OTA dexopt works\nBug: 13758960, 30944031\nChange-Id: I9afb9f71858febde34a94f53839b2986493b68a0\n"
    },
    {
      "commit": "e03b8124d0a940e7b16be03257f55618d156fdab",
      "tree": "b8271bb8e098f915e3c34ea70ed194977837c2ce",
      "parents": [
        "f8145c9f3f19cf71aecb96a1d49e567feb24e296",
        "22f02b3e4acd7c6983f4d4d58b85069d5ec920ab"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Fri Dec 09 15:23:05 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 09 15:23:08 2016 +0000"
      },
      "message": "Merge \"Accept adjustments from notification assistant.\""
    },
    {
      "commit": "7e28011feabb613cbff3e28ae8134f6190f9dba3",
      "tree": "fc24cf5b109ab0269f7d13748d978241873a3efc",
      "parents": [
        "accb2854d1037703d82167af5c4393e628835e87",
        "28b617bdea359addf8057213abef4b6c5ac02495"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 09 15:10:10 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 09 15:10:10 2016 +0000"
      },
      "message": "Merge \"Move android.test classes from core/java to legacy-test/src\" am: 2761ed124a\nam: 28b617bdea\n\nChange-Id: I83a6ce6c329e7eb18ee90689682c30d4a73d7f8e\n"
    },
    {
      "commit": "28b617bdea359addf8057213abef4b6c5ac02495",
      "tree": "902ebc36f01f87b336c0dbe72ee509ba409f5088",
      "parents": [
        "4180078d0df0ef7205847d03f07fd7c160dbd1e2",
        "2761ed124ad7e54a99d70078121229ce942075a0"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 09 15:05:06 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 09 15:05:06 2016 +0000"
      },
      "message": "Merge \"Move android.test classes from core/java to legacy-test/src\"\nam: 2761ed124a\n\nChange-Id: I0009b93ff096456d7f5fd5f83e71fd4b9bff31db\n"
    },
    {
      "commit": "2761ed124ad7e54a99d70078121229ce942075a0",
      "tree": "f9e1b928bafb46ea6319e57886da5909acc86c7f",
      "parents": [
        "a44c833042ded18df5c1779396f74282b61f9a33",
        "df2576045e0edbed05bf4511e0e9ba1038b8f3bb"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 09 14:56:37 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 09 14:56:37 2016 +0000"
      },
      "message": "Merge \"Move android.test classes from core/java to legacy-test/src\""
    },
    {
      "commit": "dda938a698a17b2943bbe78f6631a26dedabf28a",
      "tree": "01359931c5903022e34e6159263ef20911253a0c",
      "parents": [
        "dadf6caf9f2a8c360203a3f141a8c1366159ec4d"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Dec 02 12:17:21 2016 -0700"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Fri Dec 09 13:59:18 2016 +0900"
      },
      "message": "DO NOT MERGE: Switch over to new \"time.android.com\" NTP pool.\n\nAlso add logging to measure success/failure details.\n\nTest: builds, boots, and NTP fix obtained\nBug: 32969463\n\n(cherry picked from commit d3f689bf14a05de735b5cc92dcf20e7226c78690)\n\nChange-Id: I7da416099ae903fd92beb516251ef4e51673eecf\n"
    },
    {
      "commit": "df2576045e0edbed05bf4511e0e9ba1038b8f3bb",
      "tree": "c2f71972c597a374f97425ab16fcc26471140cff",
      "parents": [
        "b92aa5bdfde63e56f1e1e63fbe913638c440ffba"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Nov 30 13:29:39 2016 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Dec 08 14:55:35 2016 +0000"
      },
      "message": "Move android.test classes from core/java to legacy-test/src\n\n(cherry picked from 2395179afb2ea957a9ba66404021c14160361611)\n\nBug: 30188076\nTest: make checkbuild\nMerged-In: Ifa291909fcf47da788627b496bd72f54efd78ed7\nChange-Id: Ie20dceb9f89df245ed6da5fc2fb06185bd7b104b\n"
    },
    {
      "commit": "2395179afb2ea957a9ba66404021c14160361611",
      "tree": "53d28f10a2f8edb0baa3a046afa04bfbe1c270aa",
      "parents": [
        "3c41744b8cab0eb540dee45a7f986bf25d78188e"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Nov 30 13:29:39 2016 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Dec 08 14:49:35 2016 +0000"
      },
      "message": "Move android.test classes from core/java to legacy-test/src\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: Ifa291909fcf47da788627b496bd72f54efd78ed7\n"
    },
    {
      "commit": "22f02b3e4acd7c6983f4d4d58b85069d5ec920ab",
      "tree": "a53764f473c32ad7f8878746d56d9ecd8d215d6d",
      "parents": [
        "56cbe002c09edcf2025c975fc2f4aeee032fc925"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Thu Dec 01 15:05:13 2016 -0500"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Wed Dec 07 12:51:16 2016 -0500"
      },
      "message": "Accept adjustments from notification assistant.\n\nTest: runtest systemui-notification \u0026 cts in same topic.\nChange-Id: Icff1f89eac32b82d583eca24b0a15f67795912a1\n"
    },
    {
      "commit": "33e8de479ab373767ef38de24c17aec326281c52",
      "tree": "926160bea7dbf453c5a5bb2fca9d4111c732621d",
      "parents": [
        "d917e23bbb8bda95f9ce512b1446f15926868454",
        "2b57c69e258f4f5254c1c42d4241aaac7df6654c"
      ],
      "author": {
        "name": "Jeremy Joslin",
        "email": "jjoslin@google.com",
        "time": "Wed Dec 07 00:05:29 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 07 00:05:29 2016 +0000"
      },
      "message": "Merge \"API for requesting network recommendations.\" am: 800a4e753e\nam: 2b57c69e25\n\nChange-Id: I8f2357942919193a22e97e4f1d9ec415b736565c\n"
    },
    {
      "commit": "2b57c69e258f4f5254c1c42d4241aaac7df6654c",
      "tree": "35a57c84d9810438a92cb7036cab3bba96580a5b",
      "parents": [
        "19426fef23de12470599f84261632d20f2944b10",
        "800a4e753e991ea23b4c72568b3150b8c232aa6a"
      ],
      "author": {
        "name": "Jeremy Joslin",
        "email": "jjoslin@google.com",
        "time": "Tue Dec 06 23:58:13 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 06 23:58:13 2016 +0000"
      },
      "message": "Merge \"API for requesting network recommendations.\"\nam: 800a4e753e\n\nChange-Id: Icda431682a283051d4f5f5052dc70b8ab8e01dc9\n"
    },
    {
      "commit": "82834baa358f55acb542e17da828b2d497cf8332",
      "tree": "35a57c84d9810438a92cb7036cab3bba96580a5b",
      "parents": [
        "800a4e753e991ea23b4c72568b3150b8c232aa6a",
        "5b9b0db9f8532aea7c907d3f5ac8b7808b46c1c7"
      ],
      "author": {
        "name": "Bill Yi",
        "email": "byi@google.com",
        "time": "Tue Dec 06 15:17:16 2016 -0800"
      },
      "committer": {
        "name": "Bill Yi",
        "email": "byi@google.com",
        "time": "Tue Dec 06 15:17:16 2016 -0800"
      },
      "message": "Merge remote-tracking branch \u0027goog/stage-aosp-master\u0027 into HEAD\n"
    },
    {
      "commit": "d1daf6d22aeb502c0f94261f3421999c2da6ee51",
      "tree": "9eebc755d44107d1a83cf96a9b9f66b54a7f7492",
      "parents": [
        "9600df035b9994ae481dd7ce0335241b752f7034"
      ],
      "author": {
        "name": "Jeremy Joslin",
        "email": "jjoslin@google.com",
        "time": "Mon Nov 28 17:47:35 2016 -0800"
      },
      "committer": {
        "name": "Jeremy Joslin",
        "email": "jjoslin@google.com",
        "time": "Tue Dec 06 12:48:30 2016 -0800"
      },
      "message": "API for requesting network recommendations.\n\nDefining a new system API that will allow the system to request\nnetwork recommendations from a NetworkScoreService implementation.\n\nTest: Coming in a future CL.\nBUG: 32909424\nMerged-In: I2d5c0a843b928b04e87c1862a78702a02fd54c31\nChange-Id: Idd33095c6cd2f5b391796c900399f18a2c40fcc3\n"
    },
    {
      "commit": "1397837af370206fea01247fae7cf77228b08037",
      "tree": "afb7695b808f58e697977b4744602b82ba888056",
      "parents": [
        "28947f3b026bb68302f395891f5e7869cc974956"
      ],
      "author": {
        "name": "Jeremy Joslin",
        "email": "jjoslin@google.com",
        "time": "Mon Nov 28 17:47:35 2016 -0800"
      },
      "committer": {
        "name": "Jeremy Joslin",
        "email": "jjoslin@google.com",
        "time": "Tue Dec 06 07:33:25 2016 -0800"
      },
      "message": "API for requesting network recommendations.\n\nDefining a new system API that will allow the system to request\nnetwork recommendations from a NetworkScoreService implementation.\n\nTest: Coming after the API is approved.\nBUG: 32909424\nChange-Id: I2d5c0a843b928b04e87c1862a78702a02fd54c31\n"
    },
    {
      "commit": "d3f689bf14a05de735b5cc92dcf20e7226c78690",
      "tree": "26f480216c0fab49c46b11dbd55e11d56f6106e1",
      "parents": [
        "72b84a23c994a16c2e1154ab510fd8669cd38b56"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Dec 02 12:17:21 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Dec 02 12:25:03 2016 -0700"
      },
      "message": "Switch over to new \"time.android.com\" NTP pool.\n\nAlso add logging to measure success/failure details.\n\nTest: builds, boots, and NTP fix obtained\nBug: 32969463\nChange-Id: I66a8a78480e087acdcf8a11e79f80b7a7a4969c9\n"
    },
    {
      "commit": "aac3cba5311622061d648e92bf385da2087ce18e",
      "tree": "c2f43b307a6352226d353289c2928807fb7574c9",
      "parents": [
        "ed1b65b1ca22532ef8ecf823279ead4fb26151d3",
        "e75a66e87a4c4cf59f0ea6f4bd509fd707c2383f"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Thu Dec 01 19:46:05 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 01 19:46:09 2016 +0000"
      },
      "message": "Merge \"Listener in createNotificationChannel\""
    },
    {
      "commit": "e75a66e87a4c4cf59f0ea6f4bd509fd707c2383f",
      "tree": "fcbab545ecb4d00237ed4e1629aaa1b46dbcc1a5",
      "parents": [
        "8d86417c8efb88282af8840ff9b26c6d8984b62e"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Tue Nov 22 11:12:11 2016 -0500"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Thu Dec 01 10:59:47 2016 -0500"
      },
      "message": "Listener in createNotificationChannel\n\nNecessary for when this will eventually trigger an Activity.\nNew unit test file for NotificationServiceManager.\n\nTest: runtest systemui-notification (cts tests in separate CL)\nChange-Id: I8f3e8e34ddcebb1acb9ddd84bffc68affb4b6e89\n"
    },
    {
      "commit": "783096f02ccfa181285eb0cc9020e6f2c4a07904",
      "tree": "a49b875ad4eb2985a036934e4511b517852ad151",
      "parents": [
        "e5a3ad23fd4d6aa1c7c93cf284f038bccabb6309",
        "a485fa1fcee62325f3d69b6694e537825310f78e"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Nov 30 12:20:11 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 30 12:20:11 2016 +0000"
      },
      "message": "Merge \"Add legacy-test as replacement for core-junit\" am: e75a82a92f\nam: a485fa1fce\n\nChange-Id: I578b109bc0a4f8655643dad1092b46296ff18114\n"
    },
    {
      "commit": "a485fa1fcee62325f3d69b6694e537825310f78e",
      "tree": "64f778ad34fd79aa65e7d1a9189186565449c3a1",
      "parents": [
        "15df815e1e3f38e60deed5e1c1678710e41491bb",
        "e75a82a92fd6de5ba746eeb9a64be49433384bef"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Nov 30 12:15:14 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 30 12:15:14 2016 +0000"
      },
      "message": "Merge \"Add legacy-test as replacement for core-junit\"\nam: e75a82a92f\n\nChange-Id: Ifa6b4d9c968878e956ddff71a607af67a84472e6\n"
    },
    {
      "commit": "a856247e3ab77153dc151e73ed1028274abf953e",
      "tree": "2421862c086f5430b80726a74777485b11bd5bd6",
      "parents": [
        "6b92a910e159b4f2f0b364e6df8dc491f5ee317f",
        "bf7d366cee5e67c6f38b46aafb756a980169a5b1"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Nov 30 11:59:58 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 30 12:00:02 2016 +0000"
      },
      "message": "Merge \"Add legacy-test as replacement for core-junit\""
    },
    {
      "commit": "e20f193a8c2249fdcc5229412dbb570a4035c4c7",
      "tree": "919ec0c8d0b6cdb1048e2f3b503f31c08221d184",
      "parents": [
        "6063357ae69f29c415591b173cf411f241f129c6"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Nov 28 15:51:09 2016 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 29 15:04:00 2016 +0000"
      },
      "message": "Add legacy-test as replacement for core-junit\n\nStatically includes core-junit-static into legacy-test target so\nthat legacy-test can be used in place of core-test. Once that\nswitch over has been done then android.test classes that are\nbeing removed from the public API can be safely moved into here.\n\nBug: 30188076\nTest: make legacy-test and check contents of generated legacy-test artifacts\n\nChange-Id: I75488303067c4ac34c46279bfce9a51273adcc34\n"
    },
    {
      "commit": "d25cf04e9880c69d370bab21de0068cec5502267",
      "tree": "8a8ce7f80a548ec4cd1e17e6f535b4ab26d2cb34",
      "parents": [
        "3e68bb5d281d8eddac11ad64b64f8869b068a776",
        "241ae10b2189f449e57d8d660235ac56d8fb1b80"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 29 14:30:43 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 29 14:30:46 2016 +0000"
      },
      "message": "Merge \"Add explicit method to dismiss Keyguard\""
    },
    {
      "commit": "bf7d366cee5e67c6f38b46aafb756a980169a5b1",
      "tree": "fe51df1dc5a84ffbf5122b69b1188f94d7d1b4ef",
      "parents": [
        "3e68bb5d281d8eddac11ad64b64f8869b068a776"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Nov 28 15:51:09 2016 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 29 12:46:53 2016 +0000"
      },
      "message": "Add legacy-test as replacement for core-junit\n\nStatically includes core-junit-static into legacy-test target so\nthat legacy-test can be used in place of core-test. Once that\nswitch over has been done then android.test classes that are\nbeing removed from the public API can be safely moved into here.\n\n(cherry picked from commit bc90fcb983bb8d8066d50de90af5190a07c0a7f4)\n\nBug: 30188076\nTest: make legacy-test and check contents of generated legacy-test artifacts\nChange-Id: I7cdbeff5d95473ec2bfe6341d3957cf38d98e933\n"
    },
    {
      "commit": "199e5a98ddc4402ba4b4cdafaa3d8deb58ef3c7d",
      "tree": "d0cada5ff68d45f7857cd7fa2658c794cf674e01",
      "parents": [
        "68bd5fdd1ad3cf0b74c225b31adf1f68393bfbb6"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Nov 28 16:42:13 2016 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Nov 28 17:38:27 2016 -0800"
      },
      "message": "Add images to document built-in color spaces\n\nBug: 32984164\nTest: make offline-sdk-referenceonly-docs and manual validation of output\n\nChange-Id: I2f0e00e5a0581517bb7c535e8aee150f87ac7a6e\n"
    },
    {
      "commit": "241ae10b2189f449e57d8d660235ac56d8fb1b80",
      "tree": "a6048e4406bff9ffc789c5a9af53a0eeea0718a6",
      "parents": [
        "d4f9d37424752a0774cdf9190dc12887c70daec2"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Nov 02 21:57:33 2016 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Nov 23 16:27:35 2016 +0100"
      },
      "message": "Add explicit method to dismiss Keyguard\n\nThe flag is a bit clunky for most cases, and a method is more\nclear.\n\nTest: cts/hostsidetests/services/activityandwindowmanager/util/run-test\nandroid.server.cts.KeyguardTests\n\nTest: cts/hostsidetests/services/activityandwindowmanager/util/run-test\nandroid.server.cts.KeyguardLockedTests\n\nTest: runtest systemui -c\ncom.android.systemui.keyguard.DismissCallbackRegistryTest\n\nBug: 30961403\nBug: 27422134\nChange-Id: I39de90c7cfecd99350a74f72cd76418e337f2b79\n"
    },
    {
      "commit": "2250d56a0b47b93016018340c8f4040325aa5611",
      "tree": "b9264557e60e3486858b88d578b888f014e0074b",
      "parents": [
        "3bfef0186464eea5877f6e5cb10621f9bc5bb4dc"
      ],
      "author": {
        "name": "Sudheer Shanka",
        "email": "sudheersai@google.com",
        "time": "Mon Nov 07 15:41:02 2016 -0800"
      },
      "committer": {
        "name": "Sudheer Shanka",
        "email": "sudheersai@google.com",
        "time": "Tue Nov 15 12:43:37 2016 -0800"
      },
      "message": "Rename MountService to StorageManagerService.\n\nBug: 30977067\nTest: Existing tests pass\nChange-Id: Ieac0f11c2b249dcd60441b14c1f391e6f8131d42\n"
    },
    {
      "commit": "18fe8f6359a4892f6008ecba4dc357b01ec16568",
      "tree": "85d1168f6b4f1d6f5ec8e84d7bde4131ef7ec887",
      "parents": [
        "2c2fb6189c7dfd56b61faec84e69e4f7912a32a6",
        "29a5b0d0f1cc7fd6cbfe97c816b8a687d9e438cc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Nov 14 17:56:54 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 14 17:56:59 2016 +0000"
      },
      "message": "Merge \"Added a callback for AutoFillService.\""
    },
    {
      "commit": "d3637b97810861875402e0249f4dedd472c7039d",
      "tree": "9b13cd12ff77d28445e27ae336dc6224cd84d88d",
      "parents": [
        "f1ce47bdea652a3532dfe3cab25b701c1292eb5d",
        "fa26a0ed08fe3f14fe5be708ec6a9d9c30ecbff7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Nov 12 03:16:13 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Nov 12 03:16:17 2016 +0000"
      },
      "message": "Merge \"Refactored Shell to use IDumpstateListener.\""
    },
    {
      "commit": "29a5b0d0f1cc7fd6cbfe97c816b8a687d9e438cc",
      "tree": "25f9c559ec8ae1ee3c9ecab0a9dc1982d5b50e8d",
      "parents": [
        "7519e166983e48988957e67679ef79b9661a2b34"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Oct 25 14:57:11 2016 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Nov 11 16:02:55 2016 -0800"
      },
      "message": "Added a callback for AutoFillService.\n\nSo far AutoFillService only received the assist data from framework; in\nthis CL, it also offers a method where the auto-fill provider can send\nthe auto-fill data back to framework.\n\nThe workflow is:\n\n- AFMSI calls a new AM method (requestAutoFillData(), instead\n  of requestAssistContextExtras()).\n- The assist receiver is located in the app, not on system service.\n- AM uses a new request type (ASSIST_CONTEXT_AUTOFILL) to request the\n  assist data to the activity.\n- ViewStructure has a new setAutoFillId() method which is used to set an\n  unique id for the view.\n- View uses the accessibility id to implement the auto-fill id.\n- When the activity fullfills the request, it creates an IAutoFillCallback\n  remote object - that will be used to set the auto-fill fields - and\n  returns it in the assist bundle (using the\n  VoiceInteractionSession.KEY_AUTO_FILL_CALLBACK key).\n- The app-visible AutoFillService class offers an onFillRequest() method,\n  which contains the assist data and a FillCallback used to handle it.\n\nBUG: 31001899\nTest: manually built and ran it\n\nChange-Id: I3d208c14e81022dc96dd03f38bbe25a778b24a67\n"
    },
    {
      "commit": "fa26a0ed08fe3f14fe5be708ec6a9d9c30ecbff7",
      "tree": "0b701c464fe6c615bf9ad86f82c724270a229524",
      "parents": [
        "7519e166983e48988957e67679ef79b9661a2b34"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Oct 28 09:32:03 2016 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Nov 11 15:50:21 2016 -0800"
      },
      "message": "Refactored Shell to use IDumpstateListener.\n\nBugreportProgressService used to poll system properties to get the\nprogress of the underlying dumpstate process, but now dumpstate provides\na IDumpstateListener and IDumpstateToken binder objects for the same\npurpose.\n\nTest: BugreportReceiverTest passes\nTest: manual verification\n\nBUG: 31636879\n\nChange-Id: I81d551781a511cb1cc218a27452875b0bb267f7a\n"
    },
    {
      "commit": "40d0e338a1df020ce06228d8cf806748276d995d",
      "tree": "119888533a7a2800ad06942d991aa4d9feafd0e9",
      "parents": [
        "7519e166983e48988957e67679ef79b9661a2b34",
        "a21c42769f5d144f3e9fe8884cc3b84cbb869fd2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 11 18:57:41 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 11 18:57:47 2016 +0000"
      },
      "message": "Merge \"health: import android.hardware.health@1.0 constants into BatteryManager\""
    },
    {
      "commit": "a21c42769f5d144f3e9fe8884cc3b84cbb869fd2",
      "tree": "1ad46327bcd13f8eadb6a2e1fa8cb0ebd4eb3506",
      "parents": [
        "1183883b2e60f5afcbb25706d70e51fcf4f89829"
      ],
      "author": {
        "name": "Sandeep Patil",
        "email": "sspatil@google.com",
        "time": "Thu Nov 10 14:02:45 2016 -0800"
      },
      "committer": {
        "name": "Sandeep Patil",
        "email": "sspatil@google.com",
        "time": "Thu Nov 10 14:02:45 2016 -0800"
      },
      "message": "health: import android.hardware.health@1.0 constants into BatteryManager\n\nTest: make\nBug: b/32724915\n\nChange-Id: I7ca7507b7be54442dc3250b02db3e4f7e95f0685\nSigned-off-by: Sandeep Patil \u003csspatil@google.com\u003e\n"
    },
    {
      "commit": "5381aa4b585f3fa2a315d88e910111173e2ef77d",
      "tree": "0b61ddf3a3a84981411f7662081c75a6c7c91e70",
      "parents": [
        "8f68c8b9a89e42cde7bccb00b90db13c206ab5f4"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Oct 13 09:02:32 2016 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Nov 08 14:40:56 2016 -0800"
      },
      "message": "Initial implementation of the Auto-Fill Framework classes.\n\nThis CL provides the initial, skeleton implementation of the Auto-Fill\nFramework classes:\n\n- Defines the system service and app-based\n  AIDL (IAutoFillManagerService.aidl and IAutoFillService.aidl respectively).\n- Defines the \u0027adb shell cmd\u0027 interface.\n- Defines the permission required to access the service.\n- Registers the service on SystemServer.\n- Adds the code to bind the app-specified service to system_server.\n- Defines the service class (AutoFillService) required by providers.\n- Implements the initial startSession() method.\n\nThis is still a very early, \"work-in-progress\" change:\n- It has many TODOs.\n- It does not have unit or CTS tests yet.\n- It does not provide a callback method to auto-fill the fields.\n- In fact, it has a lot of TODOs.\n\nDespite these adversities, it can be tested by following the steps\nbelow:\n\n1.Create an app with a service extending AutoFillService\n\n2.Implement the onNewSession() method\n\n3.In the manifest:\n - Listen to android.service.autofill.AutoFillService intents.\n - Require the android.permission.BIND_AUTO_FILL permission.\n\n4.Explicitly set the app as an autofill-service by running:\n  adb shell settings put secure auto_fill_service MY_APP/.MY_SERVICE\n\n5.Start a session against the top activity:\n  adb shell cmd autofill start session\n\nBUG: 31001899\nTest: manually built and ran it\n\nChange-Id: I00f4822159b31ddddba8f513e57c4474bc74eb89\n"
    },
    {
      "commit": "a99a05982e181f079c0cdb63f753f1677bc55b4a",
      "tree": "089975e8b4f3a80cc96915a8de4e048ff1a688b6",
      "parents": [
        "e1166dd4881d8fc5f045e8e16941e26616ab774f",
        "65710071018141fecd0346ed09e53c262939e54c"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Sun Nov 06 03:21:37 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sun Nov 06 03:21:37 2016 +0000"
      },
      "message": "Merge \"[NAN-AWARE] Rename NAN to Aware\" am: 74b1131cc8\nam: 6571007101\n\nChange-Id: Ief54b313dc5ca5d30645b55ed2ad0333036a1671\n"
    },
    {
      "commit": "65710071018141fecd0346ed09e53c262939e54c",
      "tree": "2721d6b5a3232d0a67d2aaa2edcae18c6444ed80",
      "parents": [
        "e81eb613996c5f8e0564137bd6bbe759ea218d45",
        "74b1131cc820f817ece95eef2aa96f7181acdd95"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Sun Nov 06 03:13:31 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sun Nov 06 03:13:31 2016 +0000"
      },
      "message": "Merge \"[NAN-AWARE] Rename NAN to Aware\"\nam: 74b1131cc8\n\nChange-Id: I2e788e19a11f2709f2e542dbdc4b58433a3574bf\n"
    },
    {
      "commit": "0849ded00879dc05175c079011aa038c5ba0770a",
      "tree": "19718427dfbe6a605d34817950923f7ecf8d3e7d",
      "parents": [
        "c5c74f9f495e6501c38801ab65e985c8457df7e7"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Wed Oct 26 11:22:06 2016 -0700"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Sat Nov 05 09:41:38 2016 -0700"
      },
      "message": "[NAN-AWARE] Rename NAN to Aware\n\n~Rename only (and any reformatting needed to pass lint) - no\nfunctional changes!\n\nRemove android.net.wifi.nan.STATE_CHANGED from manifest:\nredundant/remnant of an older configuration.\n\n(cherry-pick of commit a61b9fb569153917a650f1d48efa20ba8846a9f3)\n\nBug: 32263750\nTest: All unit tests and integration (sl4a) tests pass.\nMerged-In: Ie4ff675fa61041e8fcf6a9bf9900ea835d0a7614\nChange-Id: I4206d2fd722dc7dec9df4aee5c818101d7f9dccc\n"
    },
    {
      "commit": "3a1dd86ce48533055b062364a2bd567a259abf71",
      "tree": "73c4cc55312cd9bd86e7f57e9032d8ae98ebbd08",
      "parents": [
        "935e92acb917d6b877a5b5d040e02758193a14ad",
        "0413327d741fe7246f9d5bf508da6f6b6a6a7476"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Sat Nov 05 16:19:39 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Nov 05 16:19:43 2016 +0000"
      },
      "message": "Merge \"[NAN-AWARE] Rename NAN to Aware\""
    },
    {
      "commit": "0413327d741fe7246f9d5bf508da6f6b6a6a7476",
      "tree": "e9db0bfba2a1240ecf7223082de4654b402c2a85",
      "parents": [
        "5963fd864be3e88a87d488ad18ba9ed512c250cb"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Wed Oct 26 11:22:06 2016 -0700"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Fri Nov 04 15:42:08 2016 -0700"
      },
      "message": "[NAN-AWARE] Rename NAN to Aware\n\n~Rename only (and any reformatting needed to pass lint) - no\nfunctional changes!\n\nRemove android.net.wifi.nan.STATE_CHANGED from manifest:\nredundant/remnant of an older configuration.\n\n(cherry-pick of commit a61b9fb569153917a650f1d48efa20ba8846a9f3)\n(cherry-pick of commit b061f21e7e59a99834e163e2baa1c82229e419a6)\n\nBug: 32263750\nTest: All unit tests and integration (sl4a) tests pass.\nChange-Id: Ie4ff675fa61041e8fcf6a9bf9900ea835d0a7614\n"
    },
    {
      "commit": "fc46e9b643881b7b2ab76854f3a0ac077e9def8d",
      "tree": "faef078c68d145d20b6db707b44e986c260c6f55",
      "parents": [
        "37ea9a1f02a1247cf0afeab987e7ca460a9eadbf"
      ],
      "author": {
        "name": "Sudheer Shanka",
        "email": "sudheersai@google.com",
        "time": "Fri Oct 21 17:55:27 2016 -0700"
      },
      "committer": {
        "name": "Sudheer Shanka",
        "email": "sudheersai@google.com",
        "time": "Fri Nov 04 10:43:25 2016 -0700"
      },
      "message": "Move IActivityManager to aidl.\n\nBug: 30977067\nTest: Existing tests are passing, dump commands still working.\nChange-Id: I9cf81c4d381ebce14a6c701e409cbb269f2ff1fb\n"
    },
    {
      "commit": "02e17d27b1d9289059fd18d512ae978f0dfd666e",
      "tree": "a3cba3e18ad00db2aa42a60d65fed14a83bc4dd4",
      "parents": [
        "f0cf27b82bbfe9ebefe770367417f41506f129ff",
        "f77ee4f1b79929a77f603e5e879f3616ae464e3e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 02 23:28:07 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 02 23:28:10 2016 +0000"
      },
      "message": "Merge \"[DPM] Management and retrieval of network logs\""
    },
    {
      "commit": "3694d8789f579f9a67ca79238b755e18b7c12b77",
      "tree": "a6642197daba7aece6e063e98b93774b14affffa",
      "parents": [
        "d3986be5e40115158cb3e41f251cad41cf08eeab",
        "dd9bb4fdd9f4b528734a7907d2bc92841ca648ab"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 02 10:35:25 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 02 10:35:28 2016 +0000"
      },
      "message": "Merge \"[DPM] DO can start network logging and listen for events\""
    },
    {
      "commit": "f77ee4f1b79929a77f603e5e879f3616ae464e3e",
      "tree": "80fdafe4527d095043d6e0f62064bcdade34be66",
      "parents": [
        "dd9bb4fdd9f4b528734a7907d2bc92841ca648ab"
      ],
      "author": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Wed Oct 12 16:40:06 2016 +0100"
      },
      "committer": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Wed Nov 02 09:00:21 2016 +0000"
      },
      "message": "[DPM] Management and retrieval of network logs\n\nThis CL follows up on ag/1530343 and adds:\n1) Various network events.\n2) Retrieval method in DPM and APIs in DeviceAdminReceiver.\n3) Extension of NetworkLogger and it\u0027s NetworkLoggingHandler.\n\nTest: runtest --path frameworks/base/services/tests/servicestests/src/com/android/server/devicepolicy/NetworkEventTest.java\nBug: 29748723\nChange-Id: I42a1a477e7c75c109a3982f809c22732b814e8b2\n"
    },
    {
      "commit": "dd9bb4fdd9f4b528734a7907d2bc92841ca648ab",
      "tree": "b17fb0eef2eaccc9d60fe0363d4e8bdd34bc2f05",
      "parents": [
        "e48170bcbb099c2898a1152a4c407ea43e7c8d27"
      ],
      "author": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Wed Oct 12 14:59:26 2016 +0100"
      },
      "committer": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Wed Nov 02 08:52:53 2016 +0000"
      },
      "message": "[DPM] DO can start network logging and listen for events\n\nThis CL adds:\n1) Setter and getter in DPM to manipulate logging switch (retrieval\nmethod to come in a subsequent CL(s)).\n2) A way for DPM to register to listen for events.\n3) Skeleton of NetworkLogger class (more to come in subsequent CL(s)).\n\nBug: 29748723\nChange-Id: I5c04662ccc6febd2ba294b0eaca1ed1da9c16e47\n"
    },
    {
      "commit": "fe9368afe82f3009c7653e97df931073860b42ec",
      "tree": "647c959e2e919933cd592cd9e69e7505f3cd6244",
      "parents": [
        "73481c88376ce5e861a50f8d11d313e5b7b1aae2",
        "fb70d77f64da2cb36035eb6ac61ed36011990eb7"
      ],
      "author": {
        "name": "Joseph Pirozzo",
        "email": "pirozzoj@google.com",
        "time": "Wed Nov 02 01:24:14 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 02 01:24:14 2016 +0000"
      },
      "message": "MAP MCE am: 631768d814 am: d94c280a7f am: c412914520\nam: fb70d77f64\n\nChange-Id: Ia56f6ca01a4d92b24f192102917950a10b6cb05d\n"
    },
    {
      "commit": "c4129145203039072541e4415cb20c2103ca34f2",
      "tree": "391f3f75b9b4436d998e6f3d0ce5915782088b9d",
      "parents": [
        "de915e3ade1b067790698d2723b538eb75a76c15",
        "d94c280a7f28f0f87ccd2a72b5814f5962756007"
      ],
      "author": {
        "name": "Joseph Pirozzo",
        "email": "pirozzoj@google.com",
        "time": "Wed Nov 02 01:09:14 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 02 01:09:14 2016 +0000"
      },
      "message": "MAP MCE am: 631768d814\nam: d94c280a7f\n\nChange-Id: I6a765b9a07204afca2763fb98fdb2e92e08292e5\n"
    },
    {
      "commit": "d94c280a7f28f0f87ccd2a72b5814f5962756007",
      "tree": "ea37c087294005784062e68b06d466e965564fb7",
      "parents": [
        "4c65d49a92f2d5746ccba85ededc1be42d784981",
        "631768d81469f83552de05bf0ec839d1cd6eab04"
      ],
      "author": {
        "name": "Joseph Pirozzo",
        "email": "pirozzoj@google.com",
        "time": "Wed Nov 02 01:03:51 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 02 01:03:51 2016 +0000"
      },
      "message": "MAP MCE\nam: 631768d814\n\nChange-Id: I155fd0e8b44539bf79cec2c6ddb2a4d71b0c23d9\n"
    }
  ],
  "next": "631768d81469f83552de05bf0ec839d1cd6eab04"
}
