)]}'
{
  "log": [
    {
      "commit": "f604fc33c699b9f91315588ea4d6c6cd3b09a372",
      "tree": "e8740d90cb937f3e59139f2974c675fccc2a05ee",
      "parents": [
        "f52ebd119e76187366e9f9d0f388fbdef46a33c8"
      ],
      "author": {
        "name": "Anju Mathapati",
        "email": "anjucm@codeaurora.org",
        "time": "Thu Mar 10 12:57:21 2016 -0800"
      },
      "committer": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Fri Mar 11 16:08:06 2016 -0800"
      },
      "message": "IMS: Changes for MultiEndpoint\n\n- Interface changes for MultiEndpoint\n\n- Extra for CallPull in -\n  - TelephonyProperties\n  - ImsProfile\n- Error codes in ImsReasonInfo\n\nChange-Id: I9a497cf04a412dc9d2f80b489e3455d289c3dfb7\n"
    },
    {
      "commit": "ed58f5f0aa580dd4a6dc0fd5dc957862309db8d9",
      "tree": "1a7b303ecceee9078e036843f95846d86420ccd4",
      "parents": [
        "316b9ecdcf5a9cebe8e46cb0ae46dc81c35d4cb8",
        "6f7362d92573e4ae693bc513dca586d6a4eb087b"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Mar 08 18:01:03 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 08 18:01:05 2016 +0000"
      },
      "message": "Merge \"Introducing ShortcutManager\" into nyc-dev"
    },
    {
      "commit": "875825d0c11f702cd17bd1086a031731d4795d58",
      "tree": "41d44b9ae522f630db1074b95da9fabb9022b423",
      "parents": [
        "ab7302c9f45f5c33e768deb3484842bab3276818",
        "e24b9a6cfa4d565d7f49c9ae8f3aeca737d93312"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Tue Mar 08 00:14:55 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 08 00:14:57 2016 +0000"
      },
      "message": "Merge \"Add a VR listener service.\" into nyc-dev"
    },
    {
      "commit": "e24b9a6cfa4d565d7f49c9ae8f3aeca737d93312",
      "tree": "fa46c5b24540874258a150c31da512f77c860297",
      "parents": [
        "8b030cce347dbfc5c2f33d96daf1de7eeb219c76"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Tue Feb 16 21:38:24 2016 -0800"
      },
      "committer": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Mon Mar 07 15:54:12 2016 -0800"
      },
      "message": "Add a VR listener service.\n\nBug: 22855417\nBug: 26724891\nBug: 27364145\n\n- Add an API for VrListenerService, which is bound/unbound\n  from the framework when the system VR mode changes.\n- Allow only a single bound VrListenerService at a time.\n- Monitor allowed VrListenerService implementations from\n  VrManagerService and evict services as needed when packages,\n  users, or settings change.\n- Remove previous VR functionality in NotificationListenerService.\n- Add component target to Activity#setVrMode to allow\n  explicit selection of the running VrListenerService from\n  the current VR activity.\n\nChange-Id: I776335f4441be0e793d3126f2d16faf86a8c621a\n"
    },
    {
      "commit": "66c96591e2ddb464c67e60dbf4193ef4ec8a620b",
      "tree": "91d81f51570a818d2d0b4b704273bed245c4e6f9",
      "parents": [
        "75e91294530aea50f8ee8255205429395d728ce5"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Feb 24 11:32:43 2016 -0800"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Mar 07 09:58:08 2016 -0800"
      },
      "message": "Add \"app printer activity\" and always keep the print service state\nupdated. Also fiddle with the UI to use more standard values.\n\nTo be sure the print service state alwasy updated I changed\nPrintManager.getPrintServices to return a loader which just wraps a\nregisterListener/getList/removeListener combo.\n\nI also added a new function to enabled/disable a print service to be\nkeep all updating logic inside the PrintManagerService-\u003eUserState.\n\nThen I changed all code to use this new interface.\n\nDetailed comments:\n\nPrintServiceInfo:\n- I had to add the enabled state to the PrintServiceInfo as some users\n  of PrintManager.getPrintServices want all services but then display\n  different data depending on the enabled state. Of course I could have\n  created two PrintManager.getPrintServices-loaders to load the two\n  separate list of services. I think it is much easier to add this\n  property though. It is updated every time new data is returned to the\n  PrintManager.getPrintServices-loader.\n\nAddPrinterActivity:\n- This is shown as a dialog-style overlay to indicate that the user will\n  return to the select-printers activity. It contains of three list that\n  are updated via separate loaders.\n- The recommended services will be added later to keep this path set\n  small.\n\nPrintActivity:\n- There are two small places where we have to update the data when we\n  get a new list of print services.\n  - In very, very rare conditions it can happen that the print service\n    of the current printer gains or looses the \"advancedOptions\"\n    activity\n  - If we have no enabled print services we want to show \"Add printer\"\n    instead of \"All printers...\".\n- Also the print registry is not the only loader anymore, hence we have\n  to assign loader ids to it to not conflict with the other loaders in\n  this activity.\n- Small bug in onPrintersChanged: If a printer is selected and the print\n  service of this printer gets disabled the holder goes into \"removed\"\n  state which disables the printer. When the print service is then\n  enabled again, we forgot to re-enable the holder.\n\nPrinterRegistry:\n- The registry assumed that the FusedPrinterProvider was the only loader\n  in the activity. This is not true anymore, hence it has to assign the\n  appropriate loader ids.\n- The FusedPrinterProvider has an internal loader, hence we have to\n  forward a loader Id into it.\n- The PrintRegistry is only called backed for a single loader, hence no\n  need to check the loader-id.\n\nSelectPrinterActivity:\n- The AddPrinterDialog was removed as we now have the\n  AddPrinterActivity.\n- Added a loader for the enabled services to update the empty state.\n- Added dedicated loader Id for the PrinterRegistry again.\n- If we have no enabled services, the SelectPrinterActivity chainloads\n  the AddPrinterActivity as this is the only thing the user can do\n  anyway. \"Save a click\". This should only happen when the activity is\n  create the first time.\n- Moved the \"add printer\" from the menu item to the list of printers as\n  suggested by UX and Zach.\n\nPrintManagerService, UserState and IPrintManagerParamtersTest:\n- As the only place where the print service state is updated is now the\n  userstate, we have no more sychronization problems. Whohoo.\n- The users can now register for changes to the print services similar\n  as they can register for changes to the print jobs.\n- UserState.getPrintServices is the only function can exposes any\n  knowledge of the print services to the outside world.\n\nChange-Id: I9be2c7300431e06aaff9bdf7eb36120d869b56ac\n"
    },
    {
      "commit": "6f7362d92573e4ae693bc513dca586d6a4eb087b",
      "tree": "447b82040ff02bfb73f2e4524051873de5ca1adb",
      "parents": [
        "b74926232ee601851e08cd5d0f0386afcb0bef3e"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Mar 04 13:39:41 2016 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Mar 04 15:24:49 2016 -0800"
      },
      "message": "Introducing ShortcutManager\n\nWhat\u0027s supported:\n- Most APIs are implemented, except for SM.updateShortcuts(),\nthe icon APIs in LA, and LA.startShortcut().\n- Persisting information, except for icons\n- Throttling\n\nIn addition, now PersistableBundle has a public copy\nconstructor from a Bundle. (Do we want to @hide it?)\n\nTODOs:\n- Add icon support\n- Implement missing APIs\n- Listen to PACKAGE_* broadcasts and do clean-up\n- Support multi-launcher apps (pinned shortcuts per launcher)\n- Dev option to reset throttling\n- Load throttling config from Settings\n- Backup \u0026 restore\n- Figure out LauncherApps permissions (BIND_APPWIDGETS??)\n- Other minor TODOs in the code\n- Better javadoc\n\nNote: This requires Idf2f9ae816e1f3d822a6286a4cf738c14e29a45e\n\nBug 27325877\n\nChange-Id: Ia5aa555a4759df5f79a859338f1dc5e624cd0e35\n"
    },
    {
      "commit": "5d2d7788f1759b0f3d2c057af0b3ea61b0354fee",
      "tree": "2eb83909d11c567eb3e27adc3711ffbe773766cd",
      "parents": [
        "212cc4ebfa1129da63c43116c863e6a7d0ca7aa2"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Dec 17 16:50:50 2015 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Mar 01 17:15:17 2016 -0800"
      },
      "message": "Camera2: Switch to auto-gen C++ binder interfaces\n\n - Move camera AIDL files to frameworks/av\n - Update makefiles to point to new AIDL locations\n - Adjust camera2 implementation to match modifications to AIDL needed\n   for native AIDL auto-generation\n - Move Surface.aidl to frameworks/native to allow use in\n   native AIDL. Use android::view::Surface in Surface JNI to\n   serialize Surface objects to ensure parceling compatibility.\n - Adjust service binder tests to new interface\n\nBug: 25091611\nChange-Id: I85b817374b34a4540fa145328dbe4bbf7f746baf\n"
    },
    {
      "commit": "94ce94e96069ab6c2ece4864ba4c7692f3168352",
      "tree": "3967dba82359dc112a713fb0ced8b6185f9772cb",
      "parents": [
        "203b353018e1533251528b087345cc9933aa38fe"
      ],
      "author": {
        "name": "Muyuan Li",
        "email": "muyuanli@google.com",
        "time": "Wed Feb 24 16:20:54 2016 -0800"
      },
      "committer": {
        "name": "Muyuan Li",
        "email": "muyuanli@google.com",
        "time": "Fri Feb 26 22:30:34 2016 +0000"
      },
      "message": "Allows components to register shortcut key.\n\nThe registered shortcut will be called from PhoneWindowManager,\nbefore dispatching\n\nChange-Id: If26128939b45a639c8895719a7a23ca433f39fd9\n(cherry picked from commit 4da863c5a8872dcabb179a978a2b2157d9081679)\n"
    },
    {
      "commit": "1142b2654ae36b54a61bfe759f2f43a01532ae93",
      "tree": "c6bbf2390084f2417b22e576ddc31cfc9bf82de3",
      "parents": [
        "6831e8ea7601c506b1e8c61021fecfffa9cb183e",
        "51e4acb29d87fafc0d790fadfd31d0c1410521f5"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Feb 24 15:06:39 2016 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Feb 24 15:19:15 2016 +0900"
      },
      "message": "resolve merge conflicts of 51e4acb29d to nyc-dev\n\nAlso add the appropriate changes to api/test-current.txt, which\nis not present on mm-wireless-dev from which this change came.\n\nChange-Id: Ic4df6d0f89add73b7e5252ef662de07a4e8fce31\n"
    },
    {
      "commit": "51e4acb29d87fafc0d790fadfd31d0c1410521f5",
      "tree": "5fcedd1a42f0f912c316d85aae8128bcadde2d0c",
      "parents": [
        "29c490bcd31cda210e1730649ba4fef02d74c69d",
        "02b3e6bfc5bbd5f1a8ce1ce68976e59142073b6f"
      ],
      "author": {
        "name": "Pierre Imai",
        "email": "imaipi@google.com",
        "time": "Wed Feb 24 04:49:24 2016 +0000"
      },
      "committer": {
        "name": "Android Partner Code Review",
        "email": "android-gerrit-partner@google.com",
        "time": "Wed Feb 24 04:49:24 2016 +0000"
      },
      "message": "Merge \"Add Connectivity Metrics Logger service\" into mm-wireless-dev"
    },
    {
      "commit": "02b3e6bfc5bbd5f1a8ce1ce68976e59142073b6f",
      "tree": "e9bf6c3b4950f505dbe982778da99c2c3cf20cb3",
      "parents": [
        "efa4209fe022d007f48edc3c4feaef00a9865cb5"
      ],
      "author": {
        "name": "Pavel Zhamaitsiak",
        "email": "pavelz@google.com",
        "time": "Wed Feb 03 10:39:44 2016 -0800"
      },
      "committer": {
        "name": "Pierre Imai",
        "email": "imaipi@google.com",
        "time": "Tue Feb 23 17:32:53 2016 +0900"
      },
      "message": "Add Connectivity Metrics Logger service\n\nThis service can be used to pass events to metrics collection service\n\nChange-Id: I213874300693cd121f2c8676f70893315de4c4c0\n"
    },
    {
      "commit": "9de7952aa945eb06148f82b9f30d7d11a2de5d74",
      "tree": "508cb88196232ec0cf6cd0855f47452f1b0b350f",
      "parents": [
        "ffd4c73a293ebac22efa644db99ba907f9776604",
        "e8a403d57c8ea540f8287cdaee8b90f0cf9626a3"
      ],
      "author": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Mon Feb 22 19:24:23 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 22 19:24:25 2016 +0000"
      },
      "message": "Merge \"Add support for update-on-boot feature.\" into nyc-dev"
    },
    {
      "commit": "fa272e5c9262bc974d68139a6300ecdbf94f0767",
      "tree": "c4cecf7f5e8e9517d460b4a29689b1d71bc22bbd",
      "parents": [
        "30eb5b30e7bf88fbd3397cb56cda854293ae9c4d",
        "801f90e61b971984c92767acd6fb62d56911664b"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Feb 22 11:55:29 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 22 11:55:30 2016 +0000"
      },
      "message": "Merge \"Add stubs needed to enable javac to compile lambdas\" into nyc-dev"
    },
    {
      "commit": "e8a403d57c8ea540f8287cdaee8b90f0cf9626a3",
      "tree": "13d471ba15c34ba265de9393e09b376a4b61a11f",
      "parents": [
        "ea168d229d316c84652e88ad0f19adbaa884d731"
      ],
      "author": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Thu Dec 31 07:44:55 2015 -0800"
      },
      "committer": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Fri Feb 19 11:31:45 2016 -0800"
      },
      "message": "Add support for update-on-boot feature.\n\nAdd a separate system service RecoverySystemService to handle recovery\nrelated requests (calling uncrypt to de-encrypt the OTA package on the\n/data partition, setting up bootloader control block (aka BCB) and etc).\n\nWe used to trigger uncrypt in ShutdownThread before rebooting into\nrecovery. Now we expose new SystemApi (RecoverySystem.processPackage())\nto allow the caller (e.g. GmsCore) to call that upfront before\ninitiating a reboot. This will reduce the reboot time and get rid of the\nprogress bar (\"processing update package\"). However, we need to reserve\nthe functionality in ShutdownThread to optionally call uncrypt if\nfinding that\u0027s still needed.\n\nIn order to support the update-on-boot feature, we also add new\nSystemApis scheduleUpdateOnBoot() and cancelScheduledUpdate() into\nandroid.os.RecoverySystem. They allow the caller (e.g. GmsCore) to\nschedule / cancel an update by setting up the BCB, which will be read by\nthe bootloader and the recovery image. With the new SystemApis, an\nupdate package can be processed (uncrypt\u0027d) in the background and\nscheduled to be installed at the next boot.\n\nBug: 26830925\nChange-Id: Ic606fcf5b31c54ce54f0ab12c1768fef0fa64560\n"
    },
    {
      "commit": "f8754ac2127f8adf40bd4731f39b16340acdb2f7",
      "tree": "efc225657092e25fc0d9ac50e5e5ac78d8eaa61d",
      "parents": [
        "5393a6605f0ffd7f5e1e7e080c414096d6b0db2a"
      ],
      "author": {
        "name": "Polina Bondarenko",
        "email": "pbond@google.com",
        "time": "Fri Feb 12 20:38:23 2016 +0100"
      },
      "committer": {
        "name": "Polina Bondarenko",
        "email": "pbond@google.com",
        "time": "Fri Feb 19 18:24:29 2016 +0100"
      },
      "message": "Added hardwareproperties SystemService\n\nAdd HardwarePropertiesManagerService which call native methods to\nget CPU, GPU, battery temperatures, CPU usage info, fan speeds.\nRestrict hardware properties retrieval only for device and profile\nowners.\n\nBug: 26945055\nChange-Id: I4d6b30b78e575532d5e9cfa59ef6cd81355439d4\n"
    },
    {
      "commit": "0d0f0c7faf530a0fa5595dd539c3f56afeb6603a",
      "tree": "2af41bc8bb2ae5516ea9a9e1931de3de09fd9152",
      "parents": [
        "e4c50de75273efaec4e9e8db6174e0bfc07d3105"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Wed Feb 17 16:01:49 2016 -0800"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Thu Feb 18 23:48:59 2016 +0000"
      },
      "message": "[NAN] Renamed listeners to callback per API guidelines [DO NOT MERGE]\n\nThe interfaces had multiple functions and are hence callback\nand not a listener.\n\nNote: purely a rename operation.\n\nBug: 27122760\nChange-Id: Ib12711f56a64052455843859125d72268c465fc0\n"
    },
    {
      "commit": "e4c50de75273efaec4e9e8db6174e0bfc07d3105",
      "tree": "f45db0acad7323c036d0fbc6484000cdd29d9f06",
      "parents": [
        "aa36f07194b29adee881e684b63f8bbdee6097bc"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Wed Feb 17 14:25:41 2016 -0800"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Thu Feb 18 23:46:01 2016 +0000"
      },
      "message": "[NAN]: API update - consolidate Puslish|Subscribe Data+Subscribe -\u003e Config [DO NOT MERGE]\n\nSimplify configuration and consolidate structures whose difference\nwasn\u0027t very clear.\n\nBug: 27122760\nChange-Id: I0651cade71eb146d9ea9219baf6d2253588db3de\n"
    },
    {
      "commit": "801f90e61b971984c92767acd6fb62d56911664b",
      "tree": "00850a12bf18cabd4aefb95c191c46d188597b0f",
      "parents": [
        "218c2ab00ae1597e2728d8b2c865269717150dd3"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Feb 18 13:57:43 2016 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Feb 18 13:59:36 2016 +0000"
      },
      "message": "Add stubs needed to enable javac to compile lambdas\n\nThis enables framework.jar code to include lambdas.\nframework.jar is still built with javac (as well as\njack) for things like doclava.\n\nBug: 26753820\nChange-Id: I25030b3fa3abdec5b325182bd0a665ba964176c0\n"
    },
    {
      "commit": "09102359ed0bdc52c636bbb24726212e4d22dfe3",
      "tree": "8e24dcffc0ea011b52e6bf103a61a0d5ca905cc5",
      "parents": [
        "3af4eb5b5076bef618b4b5e48b7d11813d973fe3",
        "7e29dea3f86e37dcf1753402cf73865114283656"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Feb 04 03:46:08 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 04 03:46:08 2016 +0000"
      },
      "message": "Merge \"Incremental local builds for frameworks\""
    },
    {
      "commit": "962c6a81e3f9b3ea6b4b178ca41a87230864525e",
      "tree": "59c46dc35be453c31d986120c96d61e9d51995e2",
      "parents": [
        "663928862ac3dc4aa570f1c51db25538e1874272",
        "fd600b1113af6f66e28b65f5b53f4a7c751cdef9"
      ],
      "author": {
        "name": "Jan Nordqvist",
        "email": "jannq@google.com",
        "time": "Wed Feb 03 20:00:47 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Feb 03 20:00:47 2016 +0000"
      },
      "message": "Merge \"New System APIs for Passpoint r2 app.\" into mm-wireless-dev\nam: fd600b1113\n\n* commit \u0027fd600b1113af6f66e28b65f5b53f4a7c751cdef9\u0027:\n  New System APIs for Passpoint r2 app.\n"
    },
    {
      "commit": "a772f0cf34f0db67997cb31fa44315c0933563da",
      "tree": "7d37cee32349f5d193eaa440037ca8ce7ac43346",
      "parents": [
        "8562fb281c37656d9198e6890f5c10e3541f6167"
      ],
      "author": {
        "name": "Vinit Deshpande",
        "email": "vinitd@google.com",
        "time": "Wed Jan 27 19:05:24 2016 -0800"
      },
      "committer": {
        "name": "Jan Nordqvist",
        "email": "jannq@google.com",
        "time": "Wed Feb 03 11:28:21 2016 -0800"
      },
      "message": "New System APIs for Passpoint r2 app.\n\nChange-Id: I09428e9a393999f43aefe5efd77cffe4b1b17da5\n"
    },
    {
      "commit": "7e29dea3f86e37dcf1753402cf73865114283656",
      "tree": "2ed29000804f122967f980ecd1b297842417d6fe",
      "parents": [
        "e5cb2a7fefe38aa40960db67b40a670fbdc06a91"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Mon Feb 01 16:22:43 2016 -0800"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Feb 03 02:56:58 2016 +0000"
      },
      "message": "Incremental local builds for frameworks\n\nChange-Id: I810652adf4359f7eb0b87adc4f5ed45da5429e6a\n"
    },
    {
      "commit": "d7a4da42bd2524fe04da23f7f27886e90a699324",
      "tree": "f5e7ca67dedc3f2e0376dd7d6acc44822de4ce82",
      "parents": [
        "ccda74f5ecb2f453bce207eda3aa8c6e9ee8b8bd",
        "d46d308562b78af6a06d014e17cb67a6e3103b30"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Feb 03 02:08:28 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 03 02:08:28 2016 +0000"
      },
      "message": "Merge changes from topic \u0027API renaming\u0027\n\n* changes:\n  Worked around the crash caused by API renaming\n  Rename Gps to Gnss for measurement-related APIs\n"
    },
    {
      "commit": "818aa2c2c46addae934fb6cd42f889affc9ef747",
      "tree": "4d6a2264c00f9be4278f1efd7940cfe25fd95528",
      "parents": [
        "59235e66a504f915fe738262fca38761d507e100"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Mon Feb 01 01:52:00 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Tue Feb 02 16:15:03 2016 -0800"
      },
      "message": "Rename Gps to Gnss for measurement-related APIs\n\nBug: 26895757\nChange-Id: I12d89dc251e356cf976a4bcd3589a8925a8ad745\n"
    },
    {
      "commit": "a89087542f774c585b6a6ec535fc294721710521",
      "tree": "ab18bd82a959dfd0afd2a8d1faba998435c56b2c",
      "parents": [
        "e909d94e03e2bd3eba0bb47b6295ae0bf6538c31"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Nov 10 08:58:14 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Feb 01 15:38:21 2016 -0800"
      },
      "message": "Frameworks/base: Add A/B OTA preopting\n\nAdd an OTA Dexopt service. Refactor package manager service and\npackage dex optimizer to reuse some code. Add knowledge about\nOTA flag to installer.\n\nBug: 25612095\nChange-Id: I7dd6bb468fea44b9d3acf0ac7d7404fb02d0f30a\n"
    },
    {
      "commit": "ad2a71f722ec736e73a4a4df3b0da820a097c396",
      "tree": "dd5b8313737dab114ce6442bbd8a58b1d6b630ec",
      "parents": [
        "5a2120820a66a52200ad6b330c623bce9bce89b4",
        "8a688b2f36437ae4305130e2920e42ce546bdbbc"
      ],
      "author": {
        "name": "Pavel Zhamaitsiak",
        "email": "pavelz@google.com",
        "time": "Thu Jan 28 23:47:01 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 28 23:47:01 2016 +0000"
      },
      "message": "Merge \"Add ITelephonyDebugSubscriber.aidl\" into mm-wireless-dev\nam: 8a688b2f36\n\n* commit \u00278a688b2f36437ae4305130e2920e42ce546bdbbc\u0027:\n  Add ITelephonyDebugSubscriber.aidl\n"
    },
    {
      "commit": "d53aadc0ec104c67929d0d3312280cd032139ed9",
      "tree": "e725d6e3c25cee8b4ba661f658ef97cba5cbc982",
      "parents": [
        "d1e2332ea3d7badc94eb662512d76a248de6f40f",
        "1d1ac5409597ef668e52c6f27293eaf9af575e33"
      ],
      "author": {
        "name": "Ashutosh Joshi",
        "email": "ashutoshj@google.com",
        "time": "Thu Jan 28 22:24:39 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 28 22:24:39 2016 +0000"
      },
      "message": "Merge \"Context hub API for applications\""
    },
    {
      "commit": "1d1ac5409597ef668e52c6f27293eaf9af575e33",
      "tree": "f9c2740347df6ca5cff08b262ee76449afb857ad",
      "parents": [
        "6cfdf6b67aede52c9fffd98315925d9368943b8b"
      ],
      "author": {
        "name": "Ashutosh Joshi",
        "email": "ashutoshj@google.com",
        "time": "Mon Jan 18 17:19:27 2016 -0800"
      },
      "committer": {
        "name": "Ashutosh Joshi",
        "email": "ashutoshj@google.com",
        "time": "Thu Jan 28 14:19:17 2016 -0800"
      },
      "message": "Context hub API for applications\n\nAdding a System API for applications to access a context hub.\n\nThe API is not expected to be exposed to third party Android\napplications in the medium term.\n\nChange-Id: Ia2222317c913de6901f3912e4c89b5cfa398be85\n"
    },
    {
      "commit": "45fbe46da642ebc0685ecdee73b09a963d5fe54d",
      "tree": "19459650c9cbc7450d749f9358db22d5d4904d6b",
      "parents": [
        "3b3e57ef2bc72bf241b16b89900d5c83fd3b4a6c",
        "e5a0e21b6fcba32e6d7486c5e7736d7d0348d55c"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Thu Jan 28 02:02:18 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 28 02:02:17 2016 +0000"
      },
      "message": "Merge changes from topic \u00272016 GPS Changes\u0027\n\n* changes:\n  Framework support to read newly added fields\n  Added an API to query GPS hardware version info\n  GPS Measurement and Navigation APIs go public\n  Supported GNSS multi-constellation in frameworks\n"
    },
    {
      "commit": "ed0eecf7a2426321db816ece1daf8d1dbfbcd6b1",
      "tree": "4ed132b9851b67294ae03082e2f30a2ffe4edf70",
      "parents": [
        "82c8b7edd0656bcab79411c8dbfe3651a314a559"
      ],
      "author": {
        "name": "Pavel Zhamaitsiak",
        "email": "pavelz@google.com",
        "time": "Wed Jan 27 18:00:17 2016 -0800"
      },
      "committer": {
        "name": "Pavel Zhamaitsiak",
        "email": "pavelz@google.com",
        "time": "Wed Jan 27 18:00:17 2016 -0800"
      },
      "message": "Add ITelephonyDebugSubscriber.aidl\n\nIt can be used to subscribe for telephony debug events.\n\nChange-Id: I6f17b0409f1117abd2d4caac99d3301c43134c75\n"
    },
    {
      "commit": "4665f49b9ca404adbb9e1bb3053b5f75ed23f846",
      "tree": "1fd235154d8f5ca05e3a96fc177d35f93f4ca9ad",
      "parents": [
        "ee4c5c9ee81fa66fb21ff30c1898e7b93fd83172",
        "1bef339b88b3f760603dcc08d79a62647fc18296"
      ],
      "author": {
        "name": "Sailesh Nepal",
        "email": "sail@google.com",
        "time": "Wed Jan 27 22:16:59 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 27 22:16:59 2016 +0000"
      },
      "message": "Merge \"Add new public API to allow call screening\""
    },
    {
      "commit": "1bef339b88b3f760603dcc08d79a62647fc18296",
      "tree": "edbd1c73921724babcf9dabc7418170e840c562e",
      "parents": [
        "9c2618b17fe580d70994ba8f5d999f20804575f9"
      ],
      "author": {
        "name": "Sailesh Nepal",
        "email": "sail@google.com",
        "time": "Sun Jan 24 18:21:53 2016 -0800"
      },
      "committer": {
        "name": "Sailesh Nepal",
        "email": "sail@google.com",
        "time": "Wed Jan 27 13:54:12 2016 -0800"
      },
      "message": "Add new public API to allow call screening\n\nThis CL adds a new service that the default dialer can implement to\nscreen incoming calls.\n\nIf the service is implemented then Telecom uses it to decide if a call\nshould be shown to the user or rejected.\n\nNote, I initially tried to simply extend InCallService instead of\ncreating a whole new service. The problem with this approach is that:\n  - this breaks some in call services which show UI as soon as they are\n    bound to\n  - the in call service lifecycle is tightly coupled to adding and\n    removing calls. Call screening happens before a call is added which\n    makes it a bad fit to in call service\n  - call screening is a function of only the default dialer\u0027s in call\n    service but the existing code also binds to \"controller\" call\n    services\n\nFor these reasons it seemed simpler to just create a new optional\nservice.\n\nBUG: 22857261\nChange-Id: I53f2ef93360e0af19b6ce45af21026be6cf3a7f3\n"
    },
    {
      "commit": "a772e5fc062c8de48cb9c1d61755110f6b2e189b",
      "tree": "3ee387dd521a8d8d6c3bbc8841542ca07a5078aa",
      "parents": [
        "5c461fc36d79d13b037ef928beb38fdb64e94057"
      ],
      "author": {
        "name": "Arunesh Mishra",
        "email": "arunesh@google.com",
        "time": "Mon Jan 25 10:33:11 2016 -0800"
      },
      "committer": {
        "name": "Arunesh Mishra",
        "email": "arunesh@google.com",
        "time": "Wed Jan 27 12:49:20 2016 -0800"
      },
      "message": "SoundTrigger API improvements.\n\nThis CL implements the SoundTrigger API improvements as given in b/22860713. Only the java-level\nparts are implemented in this CL.\n\nKey changes include:\n\n* Addition of a SoundTriggerManager/SoundTriggerDetector system API to manage\n  the sound-trigger based sound models.\n* Addition of a SoundTriggerService service that manages all sound models\n  including voice (keyphrase) and sound-trigger based models.\n* Includes logic to write sound-trigger based models to the database.\n* VoiceInteractionManager service now uses SoundTriggerService instead of\n  SoundTriggerHelper.\n\nBug: 22860713\nChange-Id: I7b5c0ed80702527c4460372efeb5e542d3693a69\n"
    },
    {
      "commit": "9465a0383148338a702818f65029b051f58d9219",
      "tree": "7e48dc940f009f36be089d67bad85d5eadb1c419",
      "parents": [
        "39cef94f1a70358cc1d6e8261379de627c3779be",
        "82c8b7edd0656bcab79411c8dbfe3651a314a559"
      ],
      "author": {
        "name": "Vinit Deshpande",
        "email": "vinitd@google.com",
        "time": "Tue Jan 26 22:41:15 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 26 22:41:15 2016 +0000"
      },
      "message": "Merge \"Remove older passpoint code that we never made to work\" into mm-wireless-dev\nam: 82c8b7edd0\n\n* commit \u002782c8b7edd0656bcab79411c8dbfe3651a314a559\u0027:\n  Remove older passpoint code that we never made to work\n"
    },
    {
      "commit": "5adbfd0a440034d6b47eaa521a5b9e38b006e52d",
      "tree": "a8c576adaaeaa713ec5d7bb4969a0a04ff190252",
      "parents": [
        "bae1c3482cdcd487dec7d1a754cf79d5c18a624b",
        "bdc77360ea277368f15d4f91b540a4882f093fa5"
      ],
      "author": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Tue Jan 26 18:17:37 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 26 18:17:37 2016 +0000"
      },
      "message": "Merge \"Build update engine binder AIDLs for framework use.\""
    },
    {
      "commit": "cb90cfbe16ab4828eaee3ab3b2de864a1f83fb06",
      "tree": "1738b514a11e0280a6b0f223dccdd78b9c3da858",
      "parents": [
        "480bd2b97a46628f36fee606a2b63248aa75dd8a"
      ],
      "author": {
        "name": "Vinit Deshpande",
        "email": "vinitd@google.com",
        "time": "Mon Jan 25 19:33:46 2016 -0800"
      },
      "committer": {
        "name": "Vinit Deshpande",
        "email": "vinitd@google.com",
        "time": "Mon Jan 25 20:15:25 2016 -0800"
      },
      "message": "Remove older passpoint code that we never made to work\n\nSince we are hiding MO trees et al; there is no reason to\nkeep this code anymore.\n\nChange-Id: Ic92131b5949c3b97b7a55fa7d3e0cd8f9e933aa0\n"
    },
    {
      "commit": "30f95a7d67870c28d2aaa88ee989c099f5670225",
      "tree": "1e9d1910d5bfebe285839e9cd3eb34b1f70e5a7c",
      "parents": [
        "365458c678af49d4a20c104ab9501014ad3ed70a"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Thu Jan 07 23:20:38 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Mon Jan 25 15:15:14 2016 -0800"
      },
      "message": "Supported GNSS multi-constellation in frameworks\n\nChange-Id: I82574afd3697c47e806d2cfaedc33756d0353b73\n"
    },
    {
      "commit": "77781d3aaa3b468d3078ea154bd3e098348451f2",
      "tree": "2949605c09ade8438e69d252eddbf606f95ee2e8",
      "parents": [
        "313b825fe64aa67a44ab883b791520f2d396aaab"
      ],
      "author": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Mon Jan 11 14:49:26 2016 -0500"
      },
      "committer": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Mon Jan 25 11:24:08 2016 -0500"
      },
      "message": "a step toward enforcing unique metrics log IDs\n\nFirst of several change lists:\n1. Add in the new proto (this CL)\n2. Migrate the existing code over to the proto.\n3. Remove MetricsConstants once it is unused.\n\nBug: 26442178\nChange-Id: Ic24829246af8ec5b202e39a85960aac5cf336c33\n"
    },
    {
      "commit": "f82ab8bea4c914c567a3487297fd4914561978a1",
      "tree": "ee81730ac8d87e5597f6b081a5798772b56915f6",
      "parents": [
        "7d1ca068a229191653f66e440f4209a2a2c3f05e",
        "cf2f9d0966af01eb269b9ce6f2d08870647dd22f"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Mon Jan 25 10:00:32 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jan 25 10:00:32 2016 +0000"
      },
      "message": "Merge \"Implementation of HCE for NFC-F.\" am: e168012ff2\nam: cf2f9d0966\n\n* commit \u0027cf2f9d0966af01eb269b9ce6f2d08870647dd22f\u0027:\n  Implementation of HCE for NFC-F.\n"
    },
    {
      "commit": "e168012ff21408f8be85040bb4ac977061519f62",
      "tree": "13e71577cf7eb2986e3759887a3e26ebed662fbc",
      "parents": [
        "b7fbe1104fd93b426dd6a6f2ed9dfc9cb12b4dd8",
        "c52adfe12469a1d1bcd5b7119b83363e094a7b84"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Mon Jan 25 09:48:43 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 25 09:48:43 2016 +0000"
      },
      "message": "Merge \"Implementation of HCE for NFC-F.\""
    },
    {
      "commit": "bdc77360ea277368f15d4f91b540a4882f093fa5",
      "tree": "cebe08d7a8a73cc082bf3183d6ee9595c2f7c3e6",
      "parents": [
        "18116c01c2e35eab0869e4a982c4669bbccb8af6"
      ],
      "author": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Tue Jan 19 15:52:28 2016 -0800"
      },
      "committer": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Sat Jan 23 15:55:19 2016 -0800"
      },
      "message": "Build update engine binder AIDLs for framework use.\n\nWe will define system APIs in framework that talk to the update engine\nvia binder APIs (e.g. android.os.UpdateEngine etc in follow-up CLs).\nThis CL adds rules to build the update engine AIDLs for that.\n\nBug: 26695366\nChange-Id: Icee5c7d396aa10e592c2b1fd58b4b369a9b6cbfc\n"
    },
    {
      "commit": "c52adfe12469a1d1bcd5b7119b83363e094a7b84",
      "tree": "403ef62d29d06f6a426bc2efeaa9177639bf4e54",
      "parents": [
        "47950e588c59ff58d12b3429d285e3330b9dfe01"
      ],
      "author": {
        "name": "Yoshinobu Ito",
        "email": "Yoshinobu.Ito@jp.sony.com",
        "time": "Fri Jan 22 18:14:18 2016 +0900"
      },
      "committer": {
        "name": "Yoshinobu Ito",
        "email": "Yoshinobu.Ito@jp.sony.com",
        "time": "Fri Jan 22 18:14:18 2016 +0900"
      },
      "message": "Implementation of HCE for NFC-F.\n\nThis impementation includes HCE(Host-based Card Emulation) for NFC-F\nwhich emulates NFC Forum Type 3 Tag on a smartphone.\n\nSigned-off-by: Daisuke Ito \u003cDaisukeE.Ito@jp.sony.com\u003e\n               Yoshinobu Ito \u003cYoshinobu.Ito@jp.sony.com\u003e\n\nChange-Id: I1618a7fba801e0705ff3cc078206a1446b3dd56d\n"
    },
    {
      "commit": "d3665f1f0f2e2aefe4c5dd6b000b356dfb414783",
      "tree": "0598d8e2edbd5e57f5a3e2f733c6fec070e42902",
      "parents": [
        "3bcf800c50238ac2df19c9fc0375c303905524b0",
        "fe06bf64d204c459699b0bf6465f9fb69208345e"
      ],
      "author": {
        "name": "Sergey Poromov",
        "email": "poromov@google.com",
        "time": "Thu Jan 21 18:55:28 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 21 18:55:28 2016 +0000"
      },
      "message": "Merge \"Introduce BackupManager#requestBackup \u0026 BackupObserver API\""
    },
    {
      "commit": "fe06bf64d204c459699b0bf6465f9fb69208345e",
      "tree": "9c17b7068072e9117c1b665db5d02f6b4cb17097",
      "parents": [
        "b325061b196e8bb849356c1beb09de9d18bbe97b"
      ],
      "author": {
        "name": "Sergey Poromov",
        "email": "poromov@google.com",
        "time": "Tue Dec 15 16:26:23 2015 +0100"
      },
      "committer": {
        "name": "Sergey Poromov",
        "email": "poromov@google.com",
        "time": "Thu Jan 21 19:15:33 2016 +0100"
      },
      "message": "Introduce BackupManager#requestBackup \u0026 BackupObserver API\n\nIntroduces a way to request immediate backup for list of packages\nand receive callbacks on backup progress.\n\nBug: 25688526\nChange-Id: Ib826933d44f4ebf2b981f8be366215b2d37847e2\n"
    },
    {
      "commit": "900fe2410ddfdaa7be71d41335b73dc2c1c7858e",
      "tree": "0ee3c205e7887fc608c706b2079ea35b90f43e7b",
      "parents": [
        "a344be935db6c7f190fb1b730778dba7601d38c5",
        "75431fbe361e16cfdc43c16cc65b86b8dab39e82"
      ],
      "author": {
        "name": "Rubin Xu",
        "email": "rubinxu@google.com",
        "time": "Tue Jan 19 23:31:32 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 19 23:31:32 2016 +0000"
      },
      "message": "Merge \"Add JNI bridge to the new logd security buffer.\""
    },
    {
      "commit": "9941ab3cbb91bffe3b06d3a77a68bb97bcaba381",
      "tree": "4dedf62062ea0e20e9f30492280202f16d2ecdec",
      "parents": [
        "59f1744ef4a100879544553ffb2c33b4e008396b",
        "ca5edbb6b5300e07a5f7bfbec36f08df65d8f6e7"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Fri Jan 15 20:09:11 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 15 20:09:11 2016 +0000"
      },
      "message": "Merge \"Changes in DeviceIdlecontroller and JobScheduler to support Auto GarageMode.\""
    },
    {
      "commit": "ca5edbb6b5300e07a5f7bfbec36f08df65d8f6e7",
      "tree": "f546e49f84095fc56ee48349d9f397c3fd6eca96",
      "parents": [
        "8e25f731d32c8623b5518be1b1529faeebffa1e8"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Wed Jan 13 14:44:36 2016 -0800"
      },
      "committer": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Fri Jan 15 12:06:30 2016 -0800"
      },
      "message": "Changes in DeviceIdlecontroller and JobScheduler to support Auto GarageMode.\n\nChanges made in the cl:\n1. Let DeviceIdleController take listeners on whether background\nmaintanence services are active. This currently includes JobScheduler,\nSyncManager, DownloadService. Note this is the last known\nstates reported by these services.\n\n2. In JobScheduler, make the idle threshold and alarm window configurable.\nSo in the car case, we don\u0027t need to wait 71 mins after screen off\nto kick off any jobs that require device idle.\n\n-------------------------------------------------------------------\n\n* We are not going to suppress JobScheduler, DownloadService, SyncManager\nentirely while user is driving. Because apps may not be working properly if\nthese services are suspended.\n\n* The jobs that we don\u0027t allow to run while driving are the\njobs submitted to JobScheduler that require device idle.\nAnd this is already taken care of, because\nscreen is ON and JobScheduler will not consider the device to be idle\nwhile driving (unless user turns off the head unit).\n\n* We will need to give the JobScheduler a chance to run the device idle\njobs when car is turned off. This is the scope of GarageMode. If\nDownloadService and SyncManager want to run, we will allow them to run\ntoo.\n\n* The headunit is treated as wall power device, so it\u0027s always charging.\nThe charging state will not toggle.\n\nChange-Id: I55b92cf92efd61c48dd6c9b8197c2b68078a4439\n"
    },
    {
      "commit": "75431fbe361e16cfdc43c16cc65b86b8dab39e82",
      "tree": "1401723427775bc9c1ffa7b479254bf55f3454bb",
      "parents": [
        "b68d2d5b68dc58fb7b75ce94af74de58a1b9d3f9"
      ],
      "author": {
        "name": "Rubin Xu",
        "email": "rubinxu@google.com",
        "time": "Thu Jan 07 21:12:14 2016 +0000"
      },
      "committer": {
        "name": "Rubin Xu",
        "email": "rubinxu@google.com",
        "time": "Fri Jan 15 17:18:49 2016 +0000"
      },
      "message": "Add JNI bridge to the new logd security buffer.\n\nBug: 26127031\nBug: 22860162\nChange-Id: I14e08850ece7d9c0229b7213ee2e25cd089defc1\n"
    },
    {
      "commit": "3da7357951a1981ecf40391e19ad8e53b45cb046",
      "tree": "cfc394e8b0a0137a3a7203827c7248c718a7cb3c",
      "parents": [
        "f1fc5a0fe802f8cbf477b1ef54b25127818e091d",
        "e540b64aaf58460f7930a5e4937cee660215c948"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Fri Jan 15 01:29:48 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jan 15 01:29:48 2016 +0000"
      },
      "message": "Merge \"NAN: baseline NAN manager for discovery.\" into mm-wireless-dev\nam: e540b64aaf\n\n* commit \u0027e540b64aaf58460f7930a5e4937cee660215c948\u0027:\n  NAN: baseline NAN manager for discovery.\n"
    },
    {
      "commit": "20d329b08df7d1a94e6caee781f09e812a79c913",
      "tree": "d20d232df7945b7cfbfa5f8950317017e45bd625",
      "parents": [
        "4a4345b681f430bc76bed964eb3d4d569539130e"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Tue Sep 29 13:49:02 2015 -0700"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Thu Jan 14 11:34:07 2016 -0800"
      },
      "message": "NAN: baseline NAN manager for discovery.\n\nInitial framework for user API (all @hide for now). Supports:\n- NAN configuration\n- Publish/Subscribe \u003d Discovery\n- Message passing\n- Notifications\n\nBug: 26216681\nChange-Id: I72e467756a02f7b80c52fae916b9a47c8174af42\n"
    },
    {
      "commit": "14ef09514b9e82922b442f6ab6c8300bced8432f",
      "tree": "e73ae8e13d8ef6be80298178d352d634c6ce1df9",
      "parents": [
        "a2477acec97b78a44486436b85ec153361287687"
      ],
      "author": {
        "name": "Pavel Zhamaitsiak",
        "email": "pavelz@google.com",
        "time": "Mon Jan 04 15:54:31 2016 -0800"
      },
      "committer": {
        "name": "Ian Pedowitz",
        "email": "ijpedowitz@google.com",
        "time": "Wed Jan 13 15:09:16 2016 -0800"
      },
      "message": "Add ITelephonyDebug.aidl\n\n(cherry picked from commit f91818ca3458f9c1f1d6b6d278f8d6cc2fc14511)\n\nChange-Id: Ie3c846a90632e3afa793e6e60f5a3390a260c5a5\n"
    },
    {
      "commit": "01208118b3ba5bfa3a79725bc4d15d3924ec1a5d",
      "tree": "0fd00e48ffbe8fd8a1c9307caa81edb34782edcc",
      "parents": [
        "3242734d05df634f57cdc751fc204268783686a6",
        "3caecaec6082c59bc1605c86be692b2ae0f85ee1"
      ],
      "author": {
        "name": "Samuel Tan",
        "email": "samueltan@google.com",
        "time": "Wed Jan 13 13:42:00 2016 -0800"
      },
      "committer": {
        "name": "Samuel Tan",
        "email": "samueltan@google.com",
        "time": "Wed Jan 13 13:42:00 2016 -0800"
      },
      "message": "resolve merge conflicts of 3caecaec60 to master.\n\nChange-Id: Ic3e9909c69f03a6ef1911a6b7589afbc02d7494f\n"
    },
    {
      "commit": "ab064b3b3687424e14dccfd60ff9a8f93ec22c23",
      "tree": "51d153de4606a90f3beac1ea6a419304d2ae6fc9",
      "parents": [
        "4fce66668e45429bbba49b9fb35d3b8d095a466c",
        "2034a4c4c5edd1516d03b73a8c8d8600eb3d4cbc"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Jan 13 18:21:00 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 13 18:21:00 2016 +0000"
      },
      "message": "Merge \"Add a way for SystemUI to receive media resource (e.g. A/V codec) usage\""
    },
    {
      "commit": "d3c71f075b139024e2bea39bbd75e3b976bfb7cb",
      "tree": "34a820191708d51cee417e8f528cf0088f95d86a",
      "parents": [
        "3b61d2dfe37898072c227013d427ce69f9158eab"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Dec 07 11:59:31 2015 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Jan 12 16:10:42 2016 -0800"
      },
      "message": "Audio recording notification API\n\nAudioService can register a recording callback with AudioSystem.\nCallbacks are handled in a new class, RecordingActivityMonitor.\nThis class notifies registered AudioManager instances\n  of updates, only if this AudioManager has client callbacks.\nEach AudioManager dispatches updates to its registered\n  callbacks.\n\nBug 22876530\n\nChange-Id: I95c6e5ec0631e53af53a490bcecca96089490089\n"
    },
    {
      "commit": "239951a91eedfc4c45b80f01264da8ec1ef10e3a",
      "tree": "d0d3e55eb395ea1ea13e427eba59878b73558056",
      "parents": [
        "a15ef2abab566468af66d431303a1645069dd094"
      ],
      "author": {
        "name": "Samuel Tan",
        "email": "samueltan@google.com",
        "time": "Tue Jan 05 17:29:43 2016 -0800"
      },
      "committer": {
        "name": "Samuel Tan",
        "email": "samueltan@google.com",
        "time": "Tue Jan 12 14:43:32 2016 -0800"
      },
      "message": "Remove PersistableBundle.aidl from Java framework\n\nRemove PersistableBundle.aidl from the Java framework, since it\nhas been moved to the native libbinder.\n\nBUG: 26292234\nChange-Id: Ia3dc49a3ad92f4c579e6dff0606c1db8fb3be76b\nTEST: aosp_arm builds successfully.\n"
    },
    {
      "commit": "2034a4c4c5edd1516d03b73a8c8d8600eb3d4cbc",
      "tree": "592461a4450513754af35173ab23bbd378e7dc0a",
      "parents": [
        "d68cc200ec2f420df0c9c0e67628e7bf2e47e2d6"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Mon Dec 14 21:57:34 2015 +0900"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Jan 12 10:54:34 2016 -0800"
      },
      "message": "Add a way for SystemUI to receive media resource (e.g. A/V codec) usage\n\nBug: 26175834\nChange-Id: If506a533c5c7b567e770217a9430bf68b539677a\n"
    },
    {
      "commit": "a6c934e2a3e6ddec6549cea55b7bece02348c6f8",
      "tree": "a6b9bd98b3d2a278a5b8af63a0040eca63ce34d8",
      "parents": [
        "0429f3522bca5bb86378dd3f013f995484ddbed6"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Mon Dec 21 13:22:31 2015 +0100"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Jan 05 13:49:41 2016 +0100"
      },
      "message": "Use different asset when docked stack exists\n\n- Add the ability to add a listener when the existence of the\ndocked stack changes.\n- Register SystemUI as such a listener and switch the recents\nbutton asset when docked stack exists.\n\nChange-Id: I05350878c5adc7ad9f0399f0c42d8d1615d44d02\n"
    },
    {
      "commit": "f91818ca3458f9c1f1d6b6d278f8d6cc2fc14511",
      "tree": "344f2be54ae1b8bd24607f08810fc6e0dc0307e1",
      "parents": [
        "d2cf0ce9c17cd37a12827882b3a10512d2904103"
      ],
      "author": {
        "name": "Pavel Zhamaitsiak",
        "email": "pavelz@google.com",
        "time": "Mon Jan 04 15:54:31 2016 -0800"
      },
      "committer": {
        "name": "Pavel Zhamaitsiak",
        "email": "pavelz@google.com",
        "time": "Mon Jan 04 15:54:31 2016 -0800"
      },
      "message": "Add ITelephonyDebug.aidl\n\nChange-Id: I0f111a56b471bd8c8092d30e7157bc06b5da3769\n"
    },
    {
      "commit": "51017d0e23ce9855fabcf786a2067ceb19121fbc",
      "tree": "48d2c9e0f88cb34a55bb40aa6e8c807148388a08",
      "parents": [
        "4a5b54fb3b02db53c1f46aafe07a318bdc5d7e3c"
      ],
      "author": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Tue Dec 15 15:34:46 2015 -0500"
      },
      "committer": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Mon Jan 04 11:22:37 2016 -0500"
      },
      "message": "implement assistant service connection\n\nAdded a guest-mode to ManagedServices.\nLike system services, the lifecycle of a guest is not managed.\nUnlike system services, guests are not considered privledged.\n\nThe Assistant gets all the usual listener events.\nImplemented adjustImportance.\nFuture work: enqueued, clicked, visibility, removed, annotations\n\nBug: 22455414\nChange-Id: Ic41c0bf625b5e98cb577b49098bba23a539bb507\n"
    },
    {
      "commit": "a70412b2065aba086bca7455e8fdc72f3aecc2a7",
      "tree": "f9169ee4d16b238964ae076f98b8ae93409dc738",
      "parents": [
        "bb02b6704d0b16eaa2dab22d30ff2c8dbafa40e2"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Jul 27 14:02:11 2015 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Dec 22 13:10:55 2015 +0000"
      },
      "message": "Use libcore/known_oj_tags for the javadoc stage.\n\nHelps us process (and discard) OpenJdk specific javadoc tags.\n\n(cherry picked from commit 2c4f2843f4aa904c27dc78086bff039dbd295959)\n\nChange-Id: Ib90ce70509fefa24608067db18cfc21c6c5d0590\n"
    },
    {
      "commit": "62ed63185c4fb9fa5fb74c7bddcf9885fa06ac6d",
      "tree": "96aff6423f1ee864ca348c554dd8fb9e75ced003",
      "parents": [
        "76a9e55a8fd751e747511a9c7d02dddca31964c3"
      ],
      "author": {
        "name": "Piotr Jastrzebski",
        "email": "haaawk@google.com",
        "time": "Tue Feb 17 16:58:52 2015 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Dec 22 13:10:55 2015 +0000"
      },
      "message": "Add core-oj to the list of core library jars.\n\nWith some core classes moved to separate core-oj jar\nwe need to use the new jar.\n\n(cherry picked from commit cfa292e1dad184648bf673167f3f35b4fb34fc93)\n\nChange-Id: Iba481c3df029902a2bd0f9661d0819f4a191b2aa\n"
    },
    {
      "commit": "bb9f686b40743df2642b7d3b7778dbf7284ae665",
      "tree": "739c0a8bb1458793decc646a901adff34804adba",
      "parents": [
        "b819f8983f72b0642a3e1f889a3de31d35484c22"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Tue Dec 01 14:44:24 2015 -0800"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Dec 21 09:54:57 2015 -0800"
      },
      "message": "Allow a print service to specify per printer icons, description and\ninfo-activities\n\nThe icon is loaded from the discovery session only when it is displayed\nto avoid having to store too many icons in memory.\n\nAlso the icons are not maintained in the historical printers. Only if\nthe printers are available nice icons are shown. A historical printer is\nupdated with the appropriate properties (including icon) once it becomes\navailable.\n\nBug: 24135005\nChange-Id: Iec389bab514b024634be8fb5fc8928371cba8740\n"
    },
    {
      "commit": "1ac1e3104c9c6925866611418d418c2fe93ab8a5",
      "tree": "d072a49795a54fb41e46aa957632fb32064967ed",
      "parents": [
        "31c2ac78d9d6a5385eee9995f6c6bc762c5a697f",
        "7eba593b8d88a9b087f06ef146d82c4c77a92473"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Thu Dec 17 19:15:30 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 17 19:15:30 2015 +0000"
      },
      "message": "Merge \"Aidl it all!\""
    },
    {
      "commit": "9149d2b117aef40f38a7d62c0f8c2bb76eb4e244",
      "tree": "39312e69085bcc0814624c0ee1ad25a5086904c7",
      "parents": [
        "3a0ea6254d9ff95d09ca4ab099ac513f6804ec77"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Tue Dec 15 12:16:28 2015 -0800"
      },
      "committer": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Wed Dec 16 17:10:36 2015 -0800"
      },
      "message": "Rename and simplify DropPermissionHolder\n\nRename DropPermissionHolder to DropPermissions and move\nall server-side implementation details into a separate class.\nRename DragEvent.getDropPermissionHolder to\nrequestDropPermissions and make it take the permissions\nimplicitly.\n\nChange-Id: Ia83f7cb8af07ce13ba9536d24b0f9d63331d8736\n"
    },
    {
      "commit": "7eba593b8d88a9b087f06ef146d82c4c77a92473",
      "tree": "bcad6bb5e0a925f0c7f1cbbfe656abb611868d9f",
      "parents": [
        "8322ed39a744cc684d2da5c05d716fca6b3935d3"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Fri Dec 11 16:40:39 2015 -0500"
      },
      "committer": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Wed Dec 16 10:16:23 2015 -0500"
      },
      "message": "Aidl it all!\n\nChange-Id: Ic12e2305a947749a714102a8133321ae07599950\n"
    },
    {
      "commit": "4aa47e58c4f8d654981a9d6a7362c8bb8b2a7e30",
      "tree": "6a79d172b6d22dbf3c897eec2a4bc69609df6bdf",
      "parents": [
        "13a6158d6e516b9ea4ecf159a131332bcee42c86"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Oct 01 10:24:31 2015 -0700"
      },
      "committer": {
        "name": "Randy Pan",
        "email": "zpan@google.com",
        "time": "Thu Dec 10 16:06:50 2015 -0800"
      },
      "message": "DO NOT MERGE Introduce direct listener API for alarm delivery\n\nThe Alarm Manager now supports a set() variant that takes a listener\ncallback to invoke at alarm trigger time rather than a PendingIntent.\nThis is much lower overhead and has guaranteed low delivery latency\nfrom the trigger time.  The tradeoff is that the app must be running\n*continuously* from the time the alarm is set to the time it is\ndelivered.  If the app exits for any reason before the alarm fires,\nthe listener becomes invalid and the alarm will be dropped.  This is\nmore or less equivalent to setting an alarm with a broadcast\nPendingIntent that matches only a runtime-registered receiver.\n\nThe app\u0027s alarm listener can be any object that implements the new\nAlarmManager.OnAlarmListener interface and implements its onAlarm()\nmethod.  There is no data delivered at alarm trigger time: whatever\nstate needs to be associated with the specific alarm instance should\nsimply be packaged inside the OnAlarmListener instance.\n\nAn alarm using OnAlarmListener can request that the onAlarm() method\nbe called on an arbitrary handler.  If the program passes \u0027null\u0027 for\nthis parameter when setting the alarm, the callback occurs on the\napplication\u0027s main Looper thread.\n\nCherry-picked from 14a7bb0d370fffdf902a4e2345f46754ed2d7684\nBug 20157436\n\nChange-Id: I2eb030a24efdd466a2eee1666c5231201b43684b\n"
    },
    {
      "commit": "255d41dce1194b2edf3c4c1a5ece7f764fd40707",
      "tree": "f95c1b20723c508836c229b14030e5dd09084b67",
      "parents": [
        "d0266d3b63ea48a1d8bac412f5564c2a909926d9"
      ],
      "author": {
        "name": "Jan Nordqvist",
        "email": "jannq@google.com",
        "time": "Tue Sep 22 15:54:32 2015 -0700"
      },
      "committer": {
        "name": "Randy Pan",
        "email": "zpan@google.com",
        "time": "Thu Dec 10 16:06:50 2015 -0800"
      },
      "message": "DO NOT MERGE Hotspot 2.0 relase 2 first cut.\n\nCP mods to take a URL as a parameter, and new ScanInfo object.\n\nCherry-picked from 52eb29f0822f129f2b14bacec23dd492f2260ac0\nChange-Id: Idbb2d4751c575ba07a56942771e2b2955b624635\n"
    },
    {
      "commit": "9f93d375ce230603b03ed3fce1002f9648f4a667",
      "tree": "5b60d1ab604182aa9be33700d4b578b3e386a930",
      "parents": [
        "0b2664913fec4103a09ffc5e08f5e55d3c4a620d",
        "827902553d2642a3ed82553e1e5b6214960c3986"
      ],
      "author": {
        "name": "George Mount",
        "email": "mount@google.com",
        "time": "Fri Dec 04 10:15:08 2015 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 04 10:15:08 2015 -0800"
      },
      "message": "Remove accidentally left-in commented out line. am: 8e6fc083fe\nam: 827902553d\n\n* commit \u0027827902553d2642a3ed82553e1e5b6214960c3986\u0027:\n  Remove accidentally left-in commented out line.\n"
    },
    {
      "commit": "8e6fc083fe33543fa3ffd3bbfd25fa937f4ec7bf",
      "tree": "84c6e14f9c3144e8e1270c33895aa14cbc326d59",
      "parents": [
        "f6be99340769cae717a604c7362f85830e4601c6"
      ],
      "author": {
        "name": "George Mount",
        "email": "mount@google.com",
        "time": "Thu Dec 03 10:53:15 2015 -0800"
      },
      "committer": {
        "name": "George Mount",
        "email": "mount@google.com",
        "time": "Thu Dec 03 10:53:15 2015 -0800"
      },
      "message": "Remove accidentally left-in commented out line.\n\nChange-Id: Ic49b371a5138591051cd10e302e27535b165b2b3\n"
    },
    {
      "commit": "e1abaa631ebd67ad1058f751ebe3d91eb7268d78",
      "tree": "c05fc627add07030c6603608ecce5782f17f07c8",
      "parents": [
        "a1d8f42fcd4fef22c3a33f269c5b108344d1e665",
        "c26d7c378a58f4f312b8385baf4d318c2df35478"
      ],
      "author": {
        "name": "George Mount",
        "email": "mount@google.com",
        "time": "Thu Dec 03 18:38:48 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 03 18:38:48 2015 +0000"
      },
      "message": "Adds a way to exclude test directories from javadoc. am: f6be993407\nam: c26d7c378a\n\n* commit \u0027c26d7c378a58f4f312b8385baf4d318c2df35478\u0027:\n  Adds a way to exclude test directories from javadoc.\n"
    },
    {
      "commit": "f6be99340769cae717a604c7362f85830e4601c6",
      "tree": "fd9851de0f9f954c4fd25b105d37585f2ee41ee0",
      "parents": [
        "29ed07524ce0fc2e5950f5340d306247145d0efa"
      ],
      "author": {
        "name": "George Mount",
        "email": "mount@google.com",
        "time": "Thu Dec 03 07:39:55 2015 -0800"
      },
      "committer": {
        "name": "George Mount",
        "email": "mount@google.com",
        "time": "Thu Dec 03 10:12:52 2015 -0800"
      },
      "message": "Adds a way to exclude test directories from javadoc.\n\nBy adding a file named NO_DOCS to a directory, all\njava files under that directory will be ignored for\njavadoc builds. This is especially useful for marking\ntest projects as not participating in the javadoc\nbuild.\n\nChange-Id: I3b0259f4bb3c8460c3560fdcf97c6cac11d8001d\n"
    },
    {
      "commit": "64cdc1458bcf0d09781463a6e421b9b870b09687",
      "tree": "b72eb4fc479e14affd4f29f43c5199f8498b4889",
      "parents": [
        "7fc7f48a898a68f4bfdf8fec83aafe32f8137f11"
      ],
      "author": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Sun Nov 29 21:10:07 2015 -0800"
      },
      "committer": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Mon Nov 30 15:21:48 2015 -0800"
      },
      "message": "Remove dock divider surface when it\u0027s not visible.\n\nWe achieve the removal by notifying System UI about the visibility of\nthe dock divider. This way System UI can change visibility of the root\nview, which in turn will cause the WMS to destroy or create the surface\nas necessary.\n\nBug: 25844096\nBug: 25683717\n\nChange-Id: Idbc33368db697a059af49106dfadb80c3d7d06c1\n"
    },
    {
      "commit": "b2b2c0e7d06f4d09c941054025fcbaef50b93845",
      "tree": "492669c2ee3007dcac98beb217542ddc79559e75",
      "parents": [
        "7ff6e9e7e8a2f03bb678edd0012249846f6c7b41"
      ],
      "author": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Fri Nov 06 15:21:13 2015 +0000"
      },
      "committer": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Wed Nov 25 13:01:03 2015 +0000"
      },
      "message": "Add new TestApi annotation.\n\nThis allows us to build a special jar with methods exposed strictly\nfor CTS. An @TestApi should not be a public API or a system\nAPI.\n\nBug: 25608286\n\nChange-Id: Ifbc64bb6958d2deec5b9cf0b944acfd068f0f051\n"
    },
    {
      "commit": "d4de20df2a1e57d22db7c538b197e3db18eaaa7d",
      "tree": "3268641ec65faeddcd322048bba4f6e54d7adfeb",
      "parents": [
        "df94885e470ccf30f13238b4c3c47bf2a9fd14d5"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Nov 04 14:45:54 2015 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Nov 23 23:16:04 2015 +0000"
      },
      "message": "AudioService: remove dead code\n\nRemove dead code related to media button event receiver and\n  remote control display, now handled by MediaSession*\n\nChange-Id: I4bd621240ddddf4df079df8d551c72b232c3301d\n"
    },
    {
      "commit": "2c4f2843f4aa904c27dc78086bff039dbd295959",
      "tree": "da7756cfa5f7dff55fd3cd332f5ed17eb5c414c1",
      "parents": [
        "be2b8626fa4ab3cfcf18d0d980ca70eddbf19eb7"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Jul 27 14:02:11 2015 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Sat Nov 21 14:50:58 2015 +0000"
      },
      "message": "Use libcore/known_oj_tags for the javadoc stage.\n\nHelps us process (and discard) OpenJdk specific javadoc tags.\n\n(cherry-picked from e03d5e477b47e4ac8e227d649afd4ffe89f23712)\n\nChange-Id: I35287e9b56c148eb6cd8f37d7df81920d0d8a3bb\n"
    },
    {
      "commit": "cfa292e1dad184648bf673167f3f35b4fb34fc93",
      "tree": "7a6515d840e908fe36e23b674e0fc11299055057",
      "parents": [
        "4133dee9ec5338816e462650afcd039002eb289c"
      ],
      "author": {
        "name": "Piotr Jastrzebski",
        "email": "haaawk@google.com",
        "time": "Tue Feb 17 16:58:52 2015 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Nov 20 14:06:55 2015 +0000"
      },
      "message": "Add core-oj to the list of core library jars.\n\nWith some core classes moved to separate core-oj jar\nwe need to use the new jar.\n\n(cherry-picked from f898cda2f499b14f92bc7fb75f44110cdec7654f)\n\nChange-Id: Ica148f11bcc77f57d22944ff78c501611a293167\n"
    },
    {
      "commit": "ee35d738f46f01ce71ac8bde665d71ac3a35cbb9",
      "tree": "af94d2f305fc081a42d507528ce18190349ef139",
      "parents": [
        "c2138c54146806310c3f53aa9b2cb4775669e2ce",
        "bbadff8603ca6922a0ef89338bee5b59d6dcf641"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Thu Nov 19 20:55:14 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 19 20:55:14 2015 +0000"
      },
      "message": "Merge \"Add Quick Settings API\""
    },
    {
      "commit": "bbadff8603ca6922a0ef89338bee5b59d6dcf641",
      "tree": "74820b700931e49113322c682584e023885a3459",
      "parents": [
        "f91e74d9a945f59cdb714a80a2a87953d72dbd99"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Fri Nov 06 15:47:26 2015 -0500"
      },
      "committer": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Thu Nov 19 14:57:11 2015 -0500"
      },
      "message": "Add Quick Settings API\n\nIt is a little bit limited right now, but it contains\nthe lifecycle of a tile getting added/removed, and\nlistening/not listening and clicks.\n\nSysUI side will need some cleanup later on.\n\nChange-Id: I4db803c8a271f8bf44f2ef710517969a84a95cf0\n"
    },
    {
      "commit": "b8a279ee838c309a64211a3caa5e5e204250163d",
      "tree": "495f8b5a36b5daeda330a95e24c92bdd3dc36f0c",
      "parents": [
        "0283d44c0856499b5aabc3212487a44d6f4b2f63"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Wed Nov 18 09:59:47 2015 -0800"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Thu Nov 19 10:25:53 2015 -0800"
      },
      "message": "Allow ephemeral provider/installer\n\nThe ephemeral provider is a service that simply determines whether or\nnot an ephemeral application is available. The ephemeral installer\ndoes the heavy lifting of installing the ephemeral application.\n\nBug: 25119046\nChange-Id: I591f4c2c3f2b149d299fa8b4f359f2582d9199cb\n"
    },
    {
      "commit": "2f7d292596bdba15e441046e3a2e047f37d6ea59",
      "tree": "15f32da5db99f013d1364d6120d4a225ceb97cec",
      "parents": [
        "8382f98f6246c514106ca2bd88ab9f3c8d2ff5c8"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Oct 29 13:08:29 2015 +0100"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Nov 06 16:12:59 2015 +0100"
      },
      "message": "Supply app transition specs with a future\n\nBecause we retain activity surfaces now, the app transition specs\nwhich were calculated/generated after the onPause() call when going\nfrom recents -\u003e app were too slow. Instead, supply a cross-process\nfuture, which gets fetched when the window manager is about to be\nready to execute the app transition. In practice, this still gets\nexecuted immediately after the onPause call.\n\nIf we have a retained surface, this adds some latency, but since we\nabsolutely need the specs to execute the transition, we have that\nlatency no matter where exactly we generate the specs.\n\nIf we don\u0027t have a retained surface, the specs are not calculated on\nthe critical path, so it\u0027s faster.\n\nBug: 19940527\nChange-Id: I80d2c6f6b3a6568a70339619ecefbc3bd8409bd8\n"
    },
    {
      "commit": "bd3275370000d657ea86e3a42f1bd76343b2e6a5",
      "tree": "b124cb28135daed67a5e77f69754be8aade46405",
      "parents": [
        "d8a850042971a04e5ecaa2da293a65a3a458742a",
        "5831944a6e99eff746e70d6ee9532ec3e3f32918"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@android.com",
        "time": "Mon Nov 02 23:04:42 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Nov 02 23:04:42 2015 +0000"
      },
      "message": "Merge \"BLE-MIDI: change binding for BluetoothMidiService\"\nam: 5831944a6e\n\n* commit \u00275831944a6e99eff746e70d6ee9532ec3e3f32918\u0027:\n  BLE-MIDI: change binding for BluetoothMidiService\n"
    },
    {
      "commit": "ff23e1b4cb615f71a796cf1c08e083e2ffd45ed1",
      "tree": "28b5eed508b3bdbd922431c26f93268408e5c3c0",
      "parents": [
        "2e48f1b96e1cffec6387c2b1ce470cd85c4c68a6"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Sep 03 14:37:03 2015 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Nov 02 13:31:29 2015 -0800"
      },
      "message": "BLE-MIDI: change binding for BluetoothMidiService\n\nAdd a remote call addBluetoothDevice() using AIDL.\nThis was needed because onBind() is only called once.\n\nBug: 23219556\nBug: 23760886\nChange-Id: Id7554ca55d596352d11dbd6ae3e403138a29c864\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n(cherry picked from commit 7cd06c0b9e087a555d2c5dd4cab5b7eac8497526)\n"
    },
    {
      "commit": "14a7bb0d370fffdf902a4e2345f46754ed2d7684",
      "tree": "7ca15b9a69b6df287d0cc96b1d1da7f51b347c95",
      "parents": [
        "2d3c59c389bbd74b4efb02b9021e34e970ba4603"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Oct 01 10:24:31 2015 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Oct 30 12:14:15 2015 -0700"
      },
      "message": "Introduce direct listener API for alarm delivery\n\nThe Alarm Manager now supports a set() variant that takes a listener\ncallback to invoke at alarm trigger time rather than a PendingIntent.\nThis is much lower overhead and has guaranteed low delivery latency\nfrom the trigger time.  The tradeoff is that the app must be running\n*continuously* from the time the alarm is set to the time it is\ndelivered.  If the app exits for any reason before the alarm fires,\nthe listener becomes invalid and the alarm will be dropped.  This is\nmore or less equivalent to setting an alarm with a broadcast\nPendingIntent that matches only a runtime-registered receiver.\n\nThe app\u0027s alarm listener can be any object that implements the new\nAlarmManager.OnAlarmListener interface and implements its onAlarm()\nmethod.  There is no data delivered at alarm trigger time: whatever\nstate needs to be associated with the specific alarm instance should\nsimply be packaged inside the OnAlarmListener instance.\n\nAn alarm using OnAlarmListener can request that the onAlarm() method\nbe called on an arbitrary handler.  If the program passes \u0027null\u0027 for\nthis parameter when setting the alarm, the callback occurs on the\napplication\u0027s main Looper thread.\n\nBug 20157436\n\nChange-Id: I2eb030a24efdd466a2eee1666c5231201b43684b\n"
    },
    {
      "commit": "bc8654748f873392a52ed7ea0349df30c07006c5",
      "tree": "ad5e61f8f5bc9349cb5b416a879d8add91611770",
      "parents": [
        "461ba0ce4a1a659ee01073d37a09a109fee41857",
        "8faa19c8260d77c5ad7abc061bc06bc596be7c2b"
      ],
      "author": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Thu Oct 29 18:17:41 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 29 18:17:41 2015 +0000"
      },
      "message": "Merge \"Revert \"Declare new interface for headset client bluetooth profile to query.\"\" into cw-e-dev am: 0a80294c81 am: 2adf45bee0\nam: 8faa19c826\n\n* commit \u00278faa19c8260d77c5ad7abc061bc06bc596be7c2b\u0027:\n  Revert \"Declare new interface for headset client bluetooth profile to query.\"\n"
    },
    {
      "commit": "461ba0ce4a1a659ee01073d37a09a109fee41857",
      "tree": "26dc5832bc2bd779cf9250aca2279d1d19c06938",
      "parents": [
        "9b172f08b284ae21f57db29c2f91922994fb07ae",
        "2b47b6eed247acc95a2d27980b2d20e43c852946"
      ],
      "author": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Thu Oct 29 18:15:23 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 29 18:15:23 2015 +0000"
      },
      "message": "Merge \"Declare new interface for headset client bluetooth profile to query.\" into cw-e-dev am: a841973dee am: 8b4f21b108\nam: 2b47b6eed2\n\n* commit \u00272b47b6eed247acc95a2d27980b2d20e43c852946\u0027:\n  Declare new interface for headset client bluetooth profile to query.\n"
    },
    {
      "commit": "8faa19c8260d77c5ad7abc061bc06bc596be7c2b",
      "tree": "1bbb5b2888ee9d05634afb01f54a17c5a950d849",
      "parents": [
        "2b47b6eed247acc95a2d27980b2d20e43c852946",
        "2adf45bee0b423fa6ca758b806a16b968c0a3c65"
      ],
      "author": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Thu Oct 29 05:19:19 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 29 05:19:19 2015 +0000"
      },
      "message": "Merge \"Revert \"Declare new interface for headset client bluetooth profile to query.\"\" into cw-e-dev am: 0a80294c81\nam: 2adf45bee0\n\n* commit \u00272adf45bee0b423fa6ca758b806a16b968c0a3c65\u0027:\n  Revert \"Declare new interface for headset client bluetooth profile to query.\"\n"
    },
    {
      "commit": "70d4210e2ecbc2b3a4d1f6665ef9410bff64e4a6",
      "tree": "91cdb414aa7d6081e36b1ac5e4294195eba743aa",
      "parents": [
        "694251eaaa8ea70a9b0427d55e9ede437c83a6d5"
      ],
      "author": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Thu Oct 29 04:58:38 2015 +0000"
      },
      "committer": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Thu Oct 29 04:58:38 2015 +0000"
      },
      "message": "Revert \"Declare new interface for headset client bluetooth profile to query.\"\n\nThis reverts commit 694251eaaa8ea70a9b0427d55e9ede437c83a6d5.\n\nChange-Id: I588206d8aedb96254c27494dddb32ddc3b6ea0ea\n"
    },
    {
      "commit": "2b47b6eed247acc95a2d27980b2d20e43c852946",
      "tree": "cfb56a3d6fc3f68eb855a270ee01939b23f4def1",
      "parents": [
        "a1b8d77ca3ea6cc5e851dce8701785524e3049eb",
        "8b4f21b108828c08833767c1f3f908e1cd7f8477"
      ],
      "author": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Thu Oct 29 04:53:01 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 29 04:53:01 2015 +0000"
      },
      "message": "Merge \"Declare new interface for headset client bluetooth profile to query.\" into cw-e-dev am: a841973dee\nam: 8b4f21b108\n\n* commit \u00278b4f21b108828c08833767c1f3f908e1cd7f8477\u0027:\n  Declare new interface for headset client bluetooth profile to query.\n"
    },
    {
      "commit": "694251eaaa8ea70a9b0427d55e9ede437c83a6d5",
      "tree": "760a8a18045cffb190bde4539d8ac41a86de0b1a",
      "parents": [
        "337495bded9c4035a922274143c1ab119e692bdd"
      ],
      "author": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Wed Oct 28 21:06:27 2015 -0700"
      },
      "committer": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Wed Oct 28 21:06:27 2015 -0700"
      },
      "message": "Declare new interface for headset client bluetooth profile to query.\n\nThis is needed in order to allow implementations of the HFP HF side to\ndefine when audio can be routed to the device. This allows for calls dialed\nfrom an AG to be kept on the AG if desired.\n\nBug: 25332357\nChange-Id: I35a554cfc53f88c7dd3059bf52df5c69df9c7415\n"
    },
    {
      "commit": "108d04cccf5054cedbd39f43066e9f611c0e2d1c",
      "tree": "ca4185337b27cc03949c9440b0ab4ce0f3dacc76",
      "parents": [
        "e24807390234114a3dafba71c5211da439ec0f63",
        "144af426cde3ce336ed9f670ae596807a14ab809"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Oct 26 10:24:00 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Oct 26 10:24:00 2015 +0000"
      },
      "message": "Merge \"Adjust for changes to libcore/Docs.mk\" am: f5e3398596 am: c08debc23a\nam: 144af426cd\n\n* commit \u0027144af426cde3ce336ed9f670ae596807a14ab809\u0027:\n  Adjust for changes to libcore/Docs.mk\n"
    },
    {
      "commit": "144af426cde3ce336ed9f670ae596807a14ab809",
      "tree": "345d34e091f97c7b45dc28a45e8d7436e0997c36",
      "parents": [
        "f58fc291a855c2f8ec4f493b0a54af668271714b",
        "c08debc23ab0dfa38cab168f4c631b15b2b17d64"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Oct 26 10:17:55 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Oct 26 10:17:55 2015 +0000"
      },
      "message": "Merge \"Adjust for changes to libcore/Docs.mk\" am: f5e3398596\nam: c08debc23a\n\n* commit \u0027c08debc23ab0dfa38cab168f4c631b15b2b17d64\u0027:\n  Adjust for changes to libcore/Docs.mk\n"
    },
    {
      "commit": "c08debc23ab0dfa38cab168f4c631b15b2b17d64",
      "tree": "d9213fd1d8df9177d8f642856381472b85cdaa38",
      "parents": [
        "b0cc47efe5d7c200fe7d527c8c17d0854dfe3d35",
        "f5e33985964c3e7acf6b9cd16d94a110e4f9a42d"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Oct 26 10:11:23 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Oct 26 10:11:23 2015 +0000"
      },
      "message": "Merge \"Adjust for changes to libcore/Docs.mk\"\nam: f5e3398596\n\n* commit \u0027f5e33985964c3e7acf6b9cd16d94a110e4f9a42d\u0027:\n  Adjust for changes to libcore/Docs.mk\n"
    },
    {
      "commit": "f9611149975496daa895842a500f3e4b22c7a099",
      "tree": "069e69649223991e746254eb8d8fe6969c729d18",
      "parents": [
        "f916524f44c9955e7c747e5319d17c46a61a3c4c"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Oct 07 10:30:56 2015 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Oct 21 16:47:04 2015 +0100"
      },
      "message": "Adjust for changes to libcore/Docs.mk\n\nThe paths in libcore_to_document are now relative to\nthe build root, not libcore.\n\nBug: 22023363\nChange-Id: I75c86d6332e5eaedc67dd0d3207491aa91c02a5f\n"
    },
    {
      "commit": "61cf82778f7e3f7454778e5ef7c691857dac16e9",
      "tree": "d2439ef1818b06f2cb4dd8565e4c11b497a00b83",
      "parents": [
        "f807c4fc9e9a67aeec2c761e391dc1ed7ace3b1a",
        "92ae0a5480f8ac2107688bf2f6bb58d49cb52bd1"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Oct 13 18:21:44 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 13 18:21:44 2015 +0000"
      },
      "message": "am 92ae0a54: am 7bbb6fed: am 977fe03b: BLE-MIDI: change binding for BluetoothMidiService\n\n* commit \u002792ae0a5480f8ac2107688bf2f6bb58d49cb52bd1\u0027:\n  BLE-MIDI: change binding for BluetoothMidiService\n"
    },
    {
      "commit": "977fe03b36a7783f9cee8497efe550a69b128473",
      "tree": "d4b796103d255c84b0cde4ca0e0410cc6b8b1bf1",
      "parents": [
        "c024de3c946c18e8e4799eb8d372fdec3146f8cf"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Sep 03 14:37:03 2015 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Oct 13 15:40:03 2015 +0000"
      },
      "message": "BLE-MIDI: change binding for BluetoothMidiService\n\nAdd a remote call addBluetoothDevice() using AIDL.\nThis was needed because onBind() is only called once.\n\nBug: 23219556\nBug: 23760886\nChange-Id: Id7554ca55d596352d11dbd6ae3e403138a29c864\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n(cherry picked from commit 7cd06c0b9e087a555d2c5dd4cab5b7eac8497526)\n"
    },
    {
      "commit": "52eb29f0822f129f2b14bacec23dd492f2260ac0",
      "tree": "a3159f3badecc34705a25798f42d166c80eb443c",
      "parents": [
        "7794c359c76843300f191901d36d0c2d03154081"
      ],
      "author": {
        "name": "Jan Nordqvist",
        "email": "jannq@google.com",
        "time": "Tue Sep 22 15:54:32 2015 -0700"
      },
      "committer": {
        "name": "Jan Nordqvist",
        "email": "jannq@google.com",
        "time": "Tue Sep 22 17:24:22 2015 -0700"
      },
      "message": "Hotspot 2.0 relase 2 first cut.\n\nCP mods to take a URL as a parameter, and new ScanInfo object.\n\nChange-Id: Idbb2d4751c575ba07a56942771e2b2955b624635\n"
    },
    {
      "commit": "ede5f5480e58dac9f6ddbd36a3085592d79c98ef",
      "tree": "fa0012988e2144b04742c90706cca39546b679ff",
      "parents": [
        "4dc0c15a6ac0564b2e7d9d8b957795a373d05907"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Wed Jul 15 18:04:04 2015 -0700"
      },
      "committer": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Wed Sep 16 17:35:10 2015 -0700"
      },
      "message": "Handle content URI permissions on drop\n\nChange-Id: I846071f01ecd1eff8e3a54a1806e68e1a4b335d2\n"
    },
    {
      "commit": "7cd06c0b9e087a555d2c5dd4cab5b7eac8497526",
      "tree": "4e3795da8080a9d6733961d727e48ae81234f569",
      "parents": [
        "bba5a1514e83e2a075bd47b22a8d50a9d730653d"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Thu Sep 03 14:37:03 2015 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Sep 08 13:48:16 2015 -0700"
      },
      "message": "BLE-MIDI: change binding for BluetoothMidiService\n\nAdd a remote call addBluetoothDevice() using AIDL.\nThis was needed because onBind() is only called once.\n\nBug: 23219556\nBug: 23760886\nChange-Id: Id7554ca55d596352d11dbd6ae3e403138a29c864\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "56dafdb5ae5f1618e3583c2835759108e8c0d99f",
      "tree": "ceafdb008fe71e7429c5895f1295b77078b781aa",
      "parents": [
        "6b9d1244aa8eff8c210e8ff6ea4f620da2497297",
        "7f7ffa3722ef90a7bf5611221c4a4c9d06823a38"
      ],
      "author": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Thu Sep 03 17:37:10 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 03 17:37:10 2015 +0000"
      },
      "message": "am 7f7ffa37: am 87e4c951: am 59c1a0e1: am 8ae90587: Merge \"Add TabletModeChangedListener for SystemUI.\" into mnc-dr-dev\n\n* commit \u00277f7ffa3722ef90a7bf5611221c4a4c9d06823a38\u0027:\n  Add TabletModeChangedListener for SystemUI.\n"
    },
    {
      "commit": "7f7ffa3722ef90a7bf5611221c4a4c9d06823a38",
      "tree": "927a799b905b0da4de0c31e1b96940416a54b1df",
      "parents": [
        "9f29c39271eb8c23637bf3ff92ae039f35c457d3",
        "87e4c951bf876faefad9f4223f6a568777425ae7"
      ],
      "author": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Thu Sep 03 14:30:27 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 03 14:30:27 2015 +0000"
      },
      "message": "am 87e4c951: am 59c1a0e1: am 8ae90587: Merge \"Add TabletModeChangedListener for SystemUI.\" into mnc-dr-dev\n\n* commit \u002787e4c951bf876faefad9f4223f6a568777425ae7\u0027:\n  Add TabletModeChangedListener for SystemUI.\n"
    }
  ],
  "next": "8ae90587a510f72a176119b1f23add8bc36285b9"
}
