)]}'
{
  "log": [
    {
      "commit": "e12c6f7d545ba4b44386003d41c208cf0367c56d",
      "tree": "1a5698cf0a18bdef32768ad0362905da9c7842ec",
      "parents": [
        "109526fe4f01a2b7ac90106cf41966b2d872d03a",
        "dd806b0ed3d7bda6830067bf342417e9bce495d9"
      ],
      "author": {
        "name": "wsmlby",
        "email": "wsmlby@google.com",
        "time": "Wed Sep 10 00:21:26 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 10 00:21:27 2014 +0000"
      },
      "message": "Merge \"Fix AppCompatibility test for different process name of one package.\" into lmp-dev"
    },
    {
      "commit": "dd806b0ed3d7bda6830067bf342417e9bce495d9",
      "tree": "68dda7e668f7bce36646f6b9344f96d6875f04c7",
      "parents": [
        "329a406ed9b7349e7bdba083c7d768264336ace2"
      ],
      "author": {
        "name": "wsmlby",
        "email": "wsmlby@google.com",
        "time": "Tue Sep 09 16:06:50 2014 -0700"
      },
      "committer": {
        "name": "wsmlby",
        "email": "wsmlby@google.com",
        "time": "Tue Sep 09 16:10:12 2014 -0700"
      },
      "message": "Fix AppCompatibility test for different process name of one package.\n\nChange-Id: Ic30e5ee81fe6ea82e88d2c5541dc9fa9eba71043\n"
    },
    {
      "commit": "345d4f4f14038c2225cd599f9c432b25e572dc2c",
      "tree": "e116de958f5269166bac765250fbacb2239be860",
      "parents": [
        "bb8c4834613207cf880e8491b33eb495cc268548",
        "0321573fa7583cd2ac4ece015c2eb784e3b24eb8"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Sep 09 17:05:03 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 09 17:05:04 2014 +0000"
      },
      "message": "Merge \"Remove deprecated (and now unused) API method.\" into lmp-dev"
    },
    {
      "commit": "0321573fa7583cd2ac4ece015c2eb784e3b24eb8",
      "tree": "b623a531de65b0eb2cae0cd778fcfa654829a1a9",
      "parents": [
        "68c936f77d836285c255e98b73bdadb78025ade9"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Sep 09 08:53:56 2014 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Sep 09 08:53:56 2014 -0700"
      },
      "message": "Remove deprecated (and now unused) API method.\n\nRemoves ActivityOptions.makeLaunchTaskBehindAnimation().\n\nFixes bug 16958544.\n\nChange-Id: I2d58f4235994fe01d55b3309d0ec6f8449c5d5b8\n"
    },
    {
      "commit": "067e5f68b9216b233df1c6529db182ff9b2887ab",
      "tree": "6ffa000238b204c01bc00274851262945c0ed812",
      "parents": [
        "8232d822aa97e78e982ed154ac618cde34baac2a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Sep 07 23:14:30 2014 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 08 18:02:18 2014 -0700"
      },
      "message": "Add new wallpaper features for insets and offsets.\n\nIssue #17394151: WallpaperService / Engines need to get notified\nof WindowInsets\n\nIssue #17394203 Wallpapers need a system API to be shifted in order\nto support burn in protection\n\nAdds a new API on WallpaperManager to set additional offsets to\nmake wallpapers extend beyond the display size.\n\nInsets are now reported to wallpapers, to use as they may.  This\nincludes information about the above offsets, so they can place\ntheir content within the visible area.  And to help with this, also\nexpose the stable offsets APIs in WindowInsets which is also very\nuseful information for the wallpaper.\n\nAnother new API on WallpaperManager to set a raw offset to apply\nto the wallpaper window, forcing it to move on the screen regardless\nof what the wallpaper is drawing.\n\nFix wallpapers when used with overscan enabled, so they still extend\nout across the entire screen.  Conveniently, the above new window\ninsets information is very useful for this case as well!\n\nAnd a new wallpaper test app for all this stuff.\n\nChange-Id: I287ee36581283dd34607609fcd3170d99d120d8e\n"
    },
    {
      "commit": "a4e102ee580282dc7abeb22f4a025813e53b9431",
      "tree": "879e7632cbe83220696694dbcac3f39e587cd039",
      "parents": [
        "b75dd5cedd5eb83d1f9b86ad4a09a5e6ec3df537"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 04 22:52:27 2014 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 05 18:43:43 2014 -0700"
      },
      "message": "Work on issue #17357238: Recents is often slow if not used in a while\n\nAdd a new activity attribute, resumeWhilePausing, that allows an\nactivity specifying it to immediately start running without waiting\nfor the previous activity to pause.  The recents activity is updated\nto use this.\n\nThe implementation of this is ultimately fairly simple -- if we are\nin the path of resuming such an activity, and find that we first need\nto pause the existing activity, then within the activity manager we\ndo the regular pause flow but act like it has immediately finished\npausing right then so that we can immediately go on to the resume.\nTo make this clean, we tell the activity when asking it to pause that\nit should not come back and tell us it is done, because we aren\u0027t in\nany way waiting for it.\n\nOne potentially important change I needed to make here is the pause\ncallback no longer provides the saved persistent state, because we\nnow can\u0027t count on that callback happening.  I don\u0027t think there was\nreally any utility in this anyway -- all modern apps will have their\nsave state flow happen as part of stopping, not pausing, so we\u0027ll\nonly capture that saved state when the stop is reported back anyway.\nAnd since we do send the saved state back when stopping, it would\nalways blow away whatever we had gotten at the pause.\n\nFinally, update the documentation for AppTask.startActivity(), and\nfix the implementation handling that to be cleaner -- we need to\ndeal with inTask first before getting in to \"oh noes add NEW_TASK\nif this isn\u0027t coming from a calling activity\" flow.\n\nChange-Id: Ia1da0fac90d7bdbaafdda2e34850d795ce17a39f\n"
    },
    {
      "commit": "3207ffe12045ed6d8a2ea04993738cf71320183d",
      "tree": "41d357f5b0a6ed16196cc51b31c35a3713d4610e",
      "parents": [
        "9ffe8c06e5baa730229fd5eaeaccb7ff8f8d9518",
        "f5945a0c8bb868f978d9d0d22043a8b44464a86e"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Sat Sep 06 00:22:23 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Sep 06 00:22:25 2014 +0000"
      },
      "message": "Merge \"Disable RT-anim for AnimatorSet\" into lmp-dev"
    },
    {
      "commit": "f5945a0c8bb868f978d9d0d22043a8b44464a86e",
      "tree": "225f4979dc6b8e0290307194fa1ec0c3a48ddcff",
      "parents": [
        "c237555c6cb89c347acf13eba45b875946473501"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Sep 05 15:57:47 2014 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Sep 05 15:58:26 2014 -0700"
      },
      "message": "Disable RT-anim for AnimatorSet\n\n Bug: 17317184\n\n Unfortunately this will disable *all* RT animations in a scene,\n but we don\u0027t have more selective targetting currently\n\nChange-Id: I57e1c0ae43957f45229473bdcdaf34c05825fab7\n"
    },
    {
      "commit": "71aa8ab5d78de8292be4af49e5930fe37b7525ef",
      "tree": "0aa85b7765b5f7d2b2200beaa75964db71371001",
      "parents": [
        "f2f3bde62fd9738e1a5b7bd250aec3569cbb14c1",
        "fd887436bd111e4d2c7307578a51b5070025b7f2"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 05 20:43:51 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 05 20:43:52 2014 +0000"
      },
      "message": "Merge \"Camera2: Final API revisions\" into lmp-dev"
    },
    {
      "commit": "d89025f505daf6c50a7912e54509a5c2c0df5d96",
      "tree": "adae40e7b37eba362720164c5a4980e34e9e1505",
      "parents": [
        "dfafca76919808db583fbe53765b6358ee955122",
        "5dfa0a5f7a6365ddf3939f29227366172979e53e"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Fri Sep 05 19:49:43 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 05 19:49:46 2014 +0000"
      },
      "message": "Merge \"Minor tweaks to MediaBrowser\" into lmp-dev"
    },
    {
      "commit": "dfafca76919808db583fbe53765b6358ee955122",
      "tree": "c71cdd4876307510f504b57d06bc73bef5c1a8f5",
      "parents": [
        "845755d6e7febc24a6d7a26e68ec2414fe736367",
        "14f717a506a0d22facbec07386b06634e0c6a8ee"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Fri Sep 05 19:49:35 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 05 19:49:36 2014 +0000"
      },
      "message": "Merge \"rename add/removeCallback to register/unregisterCallback\" into lmp-dev"
    },
    {
      "commit": "845755d6e7febc24a6d7a26e68ec2414fe736367",
      "tree": "0a6f3175dbd096b074341bf29c411433a35e7ad7",
      "parents": [
        "4b278afa0dcfb7423054dca8a907a4895ef91134",
        "92e565f71526141cb38f864dcb4eeb54d2cbf869"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Fri Sep 05 19:45:42 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 05 19:45:44 2014 +0000"
      },
      "message": "Merge \"rename SERVICE_ACTION to SERVICE_INTERFACE\" into lmp-dev"
    },
    {
      "commit": "fd887436bd111e4d2c7307578a51b5070025b7f2",
      "tree": "104b760a73dc5b34c36f407384df26b01121e921",
      "parents": [
        "9f30ce3b82acb1f9582e49e9d87ab0d58c8f9ce4"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Sep 04 13:07:40 2014 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri Sep 05 12:43:11 2014 -0700"
      },
      "message": "Camera2: Final API revisions\n\n- Rename listeners to callbacks. Listeners are single-method and are interfaces,\n  while callbacks are abstract may get more methods in the future.\n- Use register/unregister for registering callbacks, not add/remove.\n\nBug: 17389922\nChange-Id: Ic6b46ad79cb43a43a85e2a4b63f059d3af99798b\n"
    },
    {
      "commit": "5dfa0a5f7a6365ddf3939f29227366172979e53e",
      "tree": "625cc01752fb762d1ef0038153410d1cdde4dede",
      "parents": [
        "14f717a506a0d22facbec07386b06634e0c6a8ee"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Fri Sep 05 10:32:20 2014 -0700"
      },
      "committer": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Fri Sep 05 11:40:34 2014 -0700"
      },
      "message": "Minor tweaks to MediaBrowser\n\n-A swapped the param order on MediaBrowser.MediaItem constructor\n-Added a missing aidl file for MediaItem\n\nbug:17205016\nChange-Id: I61538d76f76a993ed5a47b881e0d291fef1d8db3\n"
    },
    {
      "commit": "14f717a506a0d22facbec07386b06634e0c6a8ee",
      "tree": "bf891bedc4cdba5e4b5a06eafff7ee47b0b7be0c",
      "parents": [
        "92e565f71526141cb38f864dcb4eeb54d2cbf869"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Thu Sep 04 16:08:00 2014 -0700"
      },
      "committer": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Fri Sep 05 11:40:33 2014 -0700"
      },
      "message": "rename add/removeCallback to register/unregisterCallback\n\nbug:17390821\nChange-Id: Id610b481083686dba2a28b6c7c47b747f89eef4f\n"
    },
    {
      "commit": "ae686a51288031271685861436f7c67201791d09",
      "tree": "498e92bc79e8d0ce9575ff20da0e2f9f7ab478ac",
      "parents": [
        "70afe9ee84a41fda72f898716da8485e8dd419d9"
      ],
      "author": {
        "name": "Dharmesh Mokani",
        "email": "mokani@google.com",
        "time": "Thu Sep 04 12:50:43 2014 -0700"
      },
      "committer": {
        "name": "Dharmesh Mokani",
        "email": "mokani@google.com",
        "time": "Thu Sep 04 16:43:17 2014 -0700"
      },
      "message": "Address API review comment:AlwaysOnHotwordDetector\n\n- Methods creating an Intent should be named createFooIntent\n\nBug: 17389896\nChange-Id: Icb9c9f9ca3a41fca09f79ff22b99988a1ded331f\n"
    },
    {
      "commit": "92e565f71526141cb38f864dcb4eeb54d2cbf869",
      "tree": "1ef181b9aabf2ffce59a5ffbd1dce340549f8828",
      "parents": [
        "e7baf5afc07127854e5791d93f05e6b46633bc47"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Thu Sep 04 14:02:22 2014 -0700"
      },
      "committer": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Thu Sep 04 14:06:34 2014 -0700"
      },
      "message": "rename SERVICE_ACTION to SERVICE_INTERFACE\n\nFor API consistency this intent is suppose to be named SERVICE_INTERFACE.\n\nbug:17390782\nChange-Id: I4c3b1d8476dd6c939792f73615e92d7bfa6d5758\n"
    },
    {
      "commit": "7f61e96db7c90c1f4418359672aa4656aebee500",
      "tree": "6748f94db635e24c26a6a7236c444e2c0d906181",
      "parents": [
        "d400ca2f8db42e57e41f2a999833703619348fef"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Sep 02 16:43:52 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Sep 04 12:15:32 2014 -0700"
      },
      "message": "Add Configuration changes to UsageStats\n\nBug:17354208\nChange-Id: I9b2f595e51b656607e30e798926cfb7e25134944\n"
    },
    {
      "commit": "17a1b48629138c177106a21d4350a3be0e74aad7",
      "tree": "f457e137c6a7f1a5bd41fc04c80a012d5ce51b16",
      "parents": [
        "65899b10929dca755fbc43161fe5017e1fd0f0cc",
        "c692d05951561e1d9fde952cc5389ec167bdb7bb"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Tue Sep 02 16:58:29 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 02 16:58:30 2014 +0000"
      },
      "message": "Merge \"Update MediaBrowser to use String ids instead of Uris\" into lmp-dev"
    },
    {
      "commit": "c692d05951561e1d9fde952cc5389ec167bdb7bb",
      "tree": "484cbe75b1eb0a6671008be8452f1c3577c8e9a6",
      "parents": [
        "cd74270da7a7320904f14a465b8902dd5ea56f1d"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Fri Aug 29 15:16:19 2014 -0700"
      },
      "committer": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Fri Aug 29 15:16:19 2014 -0700"
      },
      "message": "Update MediaBrowser to use String ids instead of Uris\n\nSince we converted MediaDescription over to using a String media id\nfor identifying everything we should also use Strings in the browser\nservice to make it clear that it should re-use that field.\n\nbug:17333205\nChange-Id: I5fd5762bdad05068f5b1aa36074306b43432e686\n"
    },
    {
      "commit": "cc562a811da508b275254f275d6e0c1758a47d07",
      "tree": "1cf3f45e576d3033bc816a0acf8489a7b2803dcd",
      "parents": [
        "5283faba4a75a4d1fd9990637d22768e423895e3"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Aug 27 11:52:52 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Aug 29 12:52:41 2014 -0700"
      },
      "message": "Make UsageStats API comply with API Council\n\n- Fix documentation to mention units of time in APIs.\n- Return a Map instead of an ArrayMap\n\nBug:17289531\nChange-Id: I0a2cfdc0bc003eeeb65a16e37bb7b991624b2853\n"
    },
    {
      "commit": "503a102143e7ecd25721313a4edad613a3688ada",
      "tree": "782dd761810de7544fbbed7aae88be2b4c2d3a76",
      "parents": [
        "a9aa9f045836ca03b378653728476f9a298f5260",
        "ee16bdc33d32e923032073919ded1f2efe9677e1"
      ],
      "author": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Fri Aug 29 06:22:07 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 29 06:22:08 2014 +0000"
      },
      "message": "Merge \"Address API review comments\" into lmp-dev"
    },
    {
      "commit": "6a6a8f00946f963191612f64238bd706c2188dd8",
      "tree": "9672e8d9df690bf49fe63c9ddd71daadec6e3f73",
      "parents": [
        "d6b03eecf05441b28272e11a4e50177a0fbc78c7"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Thu Aug 28 16:23:43 2014 -0700"
      },
      "committer": {
        "name": "Erik Pasternak",
        "email": "roboerik@android.com",
        "time": "Thu Aug 28 23:37:22 2014 +0000"
      },
      "message": "Fix test build\n\nUpdates for MediaBrowser APIs. I missed some new demos that had been added which use\nthese APIs.\n\nChange-Id: Ic42c9ba20a851c5b08c564cfc4de71bbe09ebdb9\n"
    },
    {
      "commit": "350be2e1c2e4ad8b1a1386a55b40c123f148e94e",
      "tree": "5ed9e9cfaa4e6af7d64e7a4c7adf7443ce81c411",
      "parents": [
        "2f2ea058db85393774e9a73144d7c60dc9bdb6aa",
        "3625bf72cb8bcf3c7f8f8cd8d708d7206824cc62"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Thu Aug 28 21:51:49 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 28 21:51:50 2014 +0000"
      },
      "message": "Merge \"Update to MediaBrowser APIs per council feedback\" into lmp-dev"
    },
    {
      "commit": "3625bf72cb8bcf3c7f8f8cd8d708d7206824cc62",
      "tree": "2622f578bd3e2af0ea5f0d81bf2a617ec4f3c3dc",
      "parents": [
        "de18420afff5ae606dd5adbe2a7ab3c52c61ff39"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Wed Aug 27 16:03:19 2014 -0700"
      },
      "committer": {
        "name": "Erik Pasternak",
        "email": "roboerik@android.com",
        "time": "Thu Aug 28 21:11:22 2014 +0000"
      },
      "message": "Update to MediaBrowser APIs per council feedback\n\nDoes all the updates in the bug except the loadIcon/loadBitmap\nmethods, which are removed per feedback from Sharkey.\n\nbug:17205016\nChange-Id: Ie84d4d25a59c6985ce16972c26c8d1e5c02ff5c9\n"
    },
    {
      "commit": "2db754ac6e2cddf01801c450bb8200b01cddf410",
      "tree": "c6e5685f8032aca105e6ab076ba7f2113ea15c02",
      "parents": [
        "8bd5d6900827c465f0770290776ec52753dc9622",
        "d7c9289f935992f4ae2fc032747f9e04bb86a7d0"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 28 19:33:07 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 28 19:33:08 2014 +0000"
      },
      "message": "Merge \"Fix issue #17289876: startActivityFromRecents appears to launch the wrong task\" into lmp-dev"
    },
    {
      "commit": "d7c9289f935992f4ae2fc032747f9e04bb86a7d0",
      "tree": "b31b07270a4075e5a7827ba9751710170a4aeda3",
      "parents": [
        "19d431f330bf1d89c92c0971dad5fa8f5950b16d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Aug 27 16:44:24 2014 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 28 11:38:13 2014 -0700"
      },
      "message": "Fix issue #17289876: startActivityFromRecents appears to launch the wrong task\n\nIt would be good to actually bring the task to the front.\n\nAlso, make the flow when inTask is provided better match what happens when\nwe go looking for a task on our own.\n\nAnd this includes another fix that was supposed to be part of a different\nchange but I forgot this class is part of the framework project now.\n\nChange-Id: I3cf05f2e585c0fd7a0dbb7c7cf9fb1655764dd93\n"
    },
    {
      "commit": "4c5a27b5f667ebc7cb2b188655820ad3fddedb52",
      "tree": "a8374af7dbedfc25d0e972876869fc7b445b708b",
      "parents": [
        "040a7f0526532995a072a0473483e69b6575ac72",
        "119907cd2575c56b1ebf66348b52e67aaf6a88d8"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Aug 28 01:38:57 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 28 01:38:58 2014 +0000"
      },
      "message": "Merge \"Animator stuff\" into lmp-dev"
    },
    {
      "commit": "119907cd2575c56b1ebf66348b52e67aaf6a88d8",
      "tree": "9990e37a560021560316ac2cfc6cf4c64df9cb92",
      "parents": [
        "1698297daf8068bc9e6971d43744d48f1672bab2"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Aug 14 09:02:01 2014 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Aug 27 17:44:25 2014 -0700"
      },
      "message": "Animator stuff\n\n Bug: 17228458\n\nChange-Id: Id884a429a512f9cd2be0ed16dbd0f10e92b4440d\n"
    },
    {
      "commit": "b4558af745047631d27697460efd8fc6e7a7cf38",
      "tree": "f455b2b33ea0d9d5f23e23f0bb530571677d351a",
      "parents": [
        "89972815a2d17775538d66b9ba02747e016c81e2",
        "219857b900e2a15464c6254d8d64b68db7d548c0"
      ],
      "author": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Thu Aug 28 00:00:54 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 28 00:00:56 2014 +0000"
      },
      "message": "Merge \"Change constant to PowerManager#FLAG_WAIT_FOR_DISTANT_PROXIMITY\" into lmp-dev"
    },
    {
      "commit": "219857b900e2a15464c6254d8d64b68db7d548c0",
      "tree": "661a571383481c6a2b7b0c90816f9a3a06e5cfd8",
      "parents": [
        "869a67c0b1ed7fb485851edb99376c4e4099ceae"
      ],
      "author": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Wed Aug 27 15:36:15 2014 -0700"
      },
      "committer": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Wed Aug 27 15:37:27 2014 -0700"
      },
      "message": "Change constant to PowerManager#FLAG_WAIT_FOR_DISTANT_PROXIMITY\n\nAlso add docs to PowerManager.WakeLock#release(int)\n\nBug: 17290118\nChange-Id: Ibcbc4279efdd0f275808042356e6ff843958e23f\n"
    },
    {
      "commit": "ee16bdc33d32e923032073919ded1f2efe9677e1",
      "tree": "6e0bcdf79643bb6f2538d4dc7f98f83bd4ef6a42",
      "parents": [
        "19d431f330bf1d89c92c0971dad5fa8f5950b16d"
      ],
      "author": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Mon Aug 25 12:50:35 2014 -0700"
      },
      "committer": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Wed Aug 27 10:23:35 2014 -0700"
      },
      "message": "Address API review comments\n\n- Make Callback an abstract class\n- Split manage intents into 3 different methods\n- Remove RECOGNITION_FLAGS_NONE\n\nBug: 17255602\nChange-Id: I1329f889bb2ab35938f42d2ecfe755d2b17ec542\n"
    },
    {
      "commit": "1b012d302b56b4adf950035136d1d191a1936d5a",
      "tree": "4b6fc0a3e89f7a2251680e7e13f7211a8dff7ba2",
      "parents": [
        "987eb9734445bd92f6925b596b9b0ece90ad70b8"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Wed Aug 20 10:35:34 2014 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Tue Aug 26 15:54:25 2014 -0700"
      },
      "message": "Add sample profiling option to am.\n\nAlso bundles all profiling options into a class.\n\nBug: 17040932\nChange-Id: I85d675ee1494bdc7308caffdf94145d27c996e9d\n"
    },
    {
      "commit": "1dc0f364010083057bdf104cc6e27c870cae8702",
      "tree": "e02dd37ef27f7f4dd6741b5989624dc0fa08bb27",
      "parents": [
        "5b62d263a70ad7dceba7a488b11478ad3eaf3f45",
        "9d9607527f5bbf49c96565b63b90e36276b0dda7"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Aug 26 20:09:06 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 26 20:09:07 2014 +0000"
      },
      "message": "Merge \"Split up ComponentName in UsageEvents.Event\" into lmp-dev"
    },
    {
      "commit": "4610545dd28ebf316704e119572521e97dbbd6bd",
      "tree": "10f9e40ccd0d4e82f4db925d03e9b80ef76637fe",
      "parents": [
        "15741d0e0b859484738e2d165e99f8f686230316",
        "89ad456ea49cb62615ebdcac83a2515743bbe5fa"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Aug 26 19:56:25 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 26 19:56:26 2014 +0000"
      },
      "message": "Merge \"Fix issue #16311398: Limit number of documents a process can open\" into lmp-dev"
    },
    {
      "commit": "9d9607527f5bbf49c96565b63b90e36276b0dda7",
      "tree": "f750028aa4a8c1c0c29b2f3fedac393642dc9438",
      "parents": [
        "4e9c07c0de199169374bded403805c92f1c1c6c1"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Aug 25 14:48:12 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Aug 26 12:41:31 2014 -0700"
      },
      "message": "Split up ComponentName in UsageEvents.Event\n\nSome events in the future may not have originated\nfrom a class, so we shouldn\u0027t be using ComponentName.\n\nBug:17259858\nChange-Id: Id7fe3245b91596cf27ae4ec51655602f01665622\n"
    },
    {
      "commit": "89ad456ea49cb62615ebdcac83a2515743bbe5fa",
      "tree": "4fdd6b948f74930ad10beca0a042e40f36efc50c",
      "parents": [
        "1ce1ba68acbfcbd4100d8c4be7d17a1f0623fd62"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Aug 24 16:45:38 2014 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Aug 26 11:16:59 2014 -0700"
      },
      "message": "Fix issue #16311398: Limit number of documents a process can open\n\nIn application processes, monitor for when we start getting close\nto the Dalvik heap limit, and ask the activity manager to try to\nprune old activity instances in that case.\n\nAdd an explicit API for apps to ask that they have their own\nactivity instances cleaned up, if they want.\n\nFix some bugs in launching activities that were not correctly\napplying the \"multi task\" behavior in the appropriate situations\nof document-centric recents.\n\nClean up the activity manager\u0027s process removal code to all share\na common path.\n\nAdd a new \"Spam\" option to ActivityTests, which continually creates\nnew tasks, checking that the activity manager will now prune old\ntasks rather than letting the app run out of RAM.\n\nAnd while I was was doing this, I found problems with the path\nfor bringing an empty task to the foreground -- it could make\na new task instead of re-starting the root activity in the\nexisting task.  This is fixed, and some code in the recents\nUI for working around the bug is removed.\n\nAnd as long as I am doing that, we now have nice hooks in to\nthe activity manager for AppTask to give some APIs for better\nmanaging the task, so add those along with more tests for these\nAPIs in ActivityTests.\n\nWe should look at also having the activity manager try to prune\nold tasks when it sees app processes being killed, to better balance\nmemory use across multiple processes when some processes may host\nmany documents.  That however is for another CL...\n\nChange-Id: I2bb81c3f92819350c868c7a7470b35817eb9bea9\n"
    },
    {
      "commit": "412e4e203f9675300c1fc8aa444a49360a5423c0",
      "tree": "a2783607e24ecec909679f20d4faf134f1096431",
      "parents": [
        "51f6f52d9de011553bed9f624002b071f2b6c2f3",
        "c508d03a943cf933fb853bc2e37cccf45d9dec23"
      ],
      "author": {
        "name": "Mohamad Ayyash",
        "email": "mkayyash@google.com",
        "time": "Tue Aug 26 16:44:27 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 26 16:44:28 2014 +0000"
      },
      "message": "Merge \"Set text color for the output log.\" into lmp-dev"
    },
    {
      "commit": "c508d03a943cf933fb853bc2e37cccf45d9dec23",
      "tree": "1fc3bf530ae380ef4500102de06d021ff2378e7e",
      "parents": [
        "c54a76cbcd1e4bc7f27de2010c1c1fd4ed6f845a"
      ],
      "author": {
        "name": "Mohamad Ayyash",
        "email": "mkayyash@google.com",
        "time": "Mon Aug 25 19:27:57 2014 -0700"
      },
      "committer": {
        "name": "Mohamad Ayyash",
        "email": "mkayyash@google.com",
        "time": "Mon Aug 25 19:27:57 2014 -0700"
      },
      "message": "Set text color for the output log.\n\nIn some devices the text color is the same as the background color.\n\nChange-Id: I215d381a427e3b3ed7e29d3078752d093318b53d\n"
    },
    {
      "commit": "6b2416492e78b8f8d7bcff58cbd2015e9b0ef59c",
      "tree": "b0d6e62f9d552787aabf879bff47e6082fa4774e",
      "parents": [
        "cc3e5d5cd197ad45e051e31fd85af28588af4cf7",
        "3bcbd906bcf76267d7413297b9748c2cac0f9b82"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Aug 25 21:41:21 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 25 21:41:22 2014 +0000"
      },
      "message": "Merge \"PM: Load all splits when parsing an app manifest\" into lmp-dev"
    },
    {
      "commit": "fb30d6936a4793a3369fbf8bf51fa526b8a77272",
      "tree": "bc21b3dec54133dd6fb84b4cc6b0fff0d256637e",
      "parents": [
        "a2c1449bb7cb46d5d5610f2c66b6a1ffa0d3d033"
      ],
      "author": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Sat Aug 23 15:57:47 2014 -0700"
      },
      "committer": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Sat Aug 23 16:00:16 2014 -0700"
      },
      "message": "Fix conversion of locale from BCP47 language tag\n\nBug: 17187528\nChange-Id: Ifcf707c9be736885f3fc79f3c36087ecf9092971\n"
    },
    {
      "commit": "306908f235f9a53e8b68136ccd83cef5aad07fd2",
      "tree": "d563f73366a6574e81becd97cdd5fb681beebac9",
      "parents": [
        "a54cd533663b9836ec78735078ff11a6ca6a6db0",
        "d1c06753d045ad10e00e7aba53ee2adba0712ccc"
      ],
      "author": {
        "name": "Matthew Williams",
        "email": "mjwilliams@google.com",
        "time": "Sat Aug 23 02:48:18 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Aug 23 02:48:19 2014 +0000"
      },
      "message": "Merge \"Implement API review feedback for JobScheduler\" into lmp-dev"
    },
    {
      "commit": "dcf3068fcb55f101680e70a8a6f84f3b2c9cb1e3",
      "tree": "c1ddf18c69ab22a4ccc2d3f54b57780494dc6470",
      "parents": [
        "7653a30ea0232ab8323ec51ddcba8d8054ca8a2f"
      ],
      "author": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Fri Aug 22 16:36:34 2014 -0700"
      },
      "committer": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Fri Aug 22 17:23:13 2014 -0700"
      },
      "message": "Fix the Locale story in the hotword API\n\nTighten the API by taking in a locale rather than a string tag.\nTighten the checks when reading the enrollment metadata, bail out if any\nattribute is missing or invalid.\nAdd missing recycle call for a TypedArray\n\nStop recognition when sound model(s) change. This is needed during\nun-enrollment/re-enrollment.\n\nBug: 17187528\nBug: 17205230\nChange-Id: Idb00b51ef8c4ea0a8f8993decea582223181fa3d\n"
    },
    {
      "commit": "3bcbd906bcf76267d7413297b9748c2cac0f9b82",
      "tree": "6b314e17114580ca84cc6d18c9f944dd0a10fcca",
      "parents": [
        "a5cc002bfe7ca8a6536549189b44e7143c8611dc"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Aug 22 17:01:04 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Aug 22 17:13:00 2014 -0700"
      },
      "message": "PM: Load all splits when parsing an app manifest\n\nPreviously the base APK would be considered without\nany splits loaded into the same AssetManager. This would\nprevent splits from overriding attributes in the\nAndroidManifest.xml, such as enabled state based on\nversion, etc.\n\nThis CL loads all APKs in the cluster into a common AssetManager\nfrom which the base AndroidManifest.xml is parsed.\n\nBug:17006358\nChange-Id: Ib88096c49d0c4f743b7e6ba0921251459bee107c\n"
    },
    {
      "commit": "d1c06753d045ad10e00e7aba53ee2adba0712ccc",
      "tree": "6a1103dfcc0b6db0dfc030aba6cdb4961e2a91c2",
      "parents": [
        "acb570cd84b4e3503e7e96138ea0d9d236ca9b9e"
      ],
      "author": {
        "name": "Matthew Williams",
        "email": "mjwilliams@google.com",
        "time": "Fri Aug 22 14:15:28 2014 -0700"
      },
      "committer": {
        "name": "Matthew Williams",
        "email": "mjwilliams@google.com",
        "time": "Fri Aug 22 16:08:45 2014 -0700"
      },
      "message": "Implement API review feedback for JobScheduler\n\nBUG: 17005336\n\nTook the opportunity to clean up some back-off logic\n\nChange-Id: Ibc8ae34d1d44dd064ba071e4cbad17872f7e38cf\n"
    },
    {
      "commit": "12eec2341db422ad5792e674a0b820da68b75f64",
      "tree": "3e3f743f347861cd00956e6604afdde331a1a7ab",
      "parents": [
        "d9a218d499c47399ee185faa0eeca45eed1ca1a4",
        "9ae3dbeefcd6bc139c74bfe3d51de823e3be4b4b"
      ],
      "author": {
        "name": "Matthew Williams",
        "email": "mjwilliams@google.com",
        "time": "Fri Aug 22 21:07:57 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 22 21:08:06 2014 +0000"
      },
      "message": "Merge \"JobScheduler only run jobs for started users.\" into lmp-dev"
    },
    {
      "commit": "9ae3dbeefcd6bc139c74bfe3d51de823e3be4b4b",
      "tree": "9091f11de601187a418a60d579035a2edeb3a33d",
      "parents": [
        "bfecd904bf0ea8875caaaaafa5e3ae8c44b5175f"
      ],
      "author": {
        "name": "Matthew Williams",
        "email": "mjwilliams@google.com",
        "time": "Thu Aug 21 13:47:47 2014 -0700"
      },
      "committer": {
        "name": "Matthew Williams",
        "email": "mjwilliams@google.com",
        "time": "Thu Aug 21 20:28:12 2014 -0700"
      },
      "message": "JobScheduler only run jobs for started users.\n\nBUG: 12876556\nMinor changes to test app to make persisting an option.\nChange-Id: I1b40347878ec5ca44cd717ebfeb544f6c58473b5\n"
    },
    {
      "commit": "b020563811ae062a46aa583851824ad0c2596276",
      "tree": "d42509356ba8cebee93aba7f16b304b94eeab199",
      "parents": [
        "0104503c50623cb5b1e92cc5fb706263df1891f2",
        "d4a4b452bc422b6bc9b22cacf54e9e3105c98925"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Thu Aug 21 21:48:17 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 21 21:48:18 2014 +0000"
      },
      "message": "Merge \"We need to specify a target SDK \u003c 21 to use graphics RS.\" into lmp-dev"
    },
    {
      "commit": "269d2d4f698be1d8dafa261d68a807c11e98f9e6",
      "tree": "bf877fc65860f4a109a063d51e25de6d7d166f76",
      "parents": [
        "ebc3e4cbf14f62a2134aded9068e147ea8cbc23b"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Aug 21 12:23:36 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Aug 21 12:23:36 2014 -0700"
      },
      "message": "Update Split example with application icon\n\nPlay console wants the icon in the \u003capplication\u003e tag\n\nChange-Id: I83f8e5488ad853e548ba7aba6e32b14602a24ad3\n"
    },
    {
      "commit": "49e2fa5c5e0389d5a457b99fd785ce33f3977c65",
      "tree": "6a0e9ba5c40dc79747d4278f56fde91901ef99fa",
      "parents": [
        "6a7d2757a936ee79b8dba2055139c8b71130c58e"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Aug 21 11:21:42 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Aug 21 11:38:49 2014 -0700"
      },
      "message": "Update the Split example\n\nCaveat: There are two bugs:\n\n- Mipmap definitions get placed in all splits.\n- mdpi drawable doesn\u0027t get split properly.\n\nChange-Id: I53b8e54cbcb3dfba495ec68e602f98666e8883a7\n"
    },
    {
      "commit": "aec68bb89fe614181a20eb97340149406218ce2f",
      "tree": "b0e8807d7fb06487897a5813d9d8e3bb453f8175",
      "parents": [
        "cf038760f2af569a47e81d17d5cc86792a550c3e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Aug 20 15:25:13 2014 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Aug 20 18:03:43 2014 -0700"
      },
      "message": "Fix issue #17038762: Add API to add entries to the recents list\n\nNew API Added to ActivityManager for adding an entry.  See docs\nthere.\n\nRepercussions:\n\n- I hit a bug in system UI where if the thumbnail has alpha, it tries\n  to modify it, but thumbnails are loading immutable so crashes.  Fixed\n  this by loading the bitmaps to be mutable.\n- Improved dump output of recents; there was a lot of stuff missing.\n  Also split the recents dump output from the rest of the activity\n  output, since it can be really large.\n- Added tests to the lovely ActivityTest app.\n\nBonus: new method on AppTask to control the exclude from recents flag.\n\nChange-Id: I01e543db4d15320ee1701e95872fef73c116526c\n"
    },
    {
      "commit": "d4a4b452bc422b6bc9b22cacf54e9e3105c98925",
      "tree": "60abb11a3a5cb9f3208f5a2730dc79a7b7a059fe",
      "parents": [
        "38dd601d0abd92a9010aa8e894f6490b445f129b"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Fri Aug 15 16:03:58 2014 -0700"
      },
      "committer": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Wed Aug 20 17:20:51 2014 -0700"
      },
      "message": "We need to specify a target SDK \u003c 21 to use graphics RS.\n\nBug: 16031597\n\nThis change also removes some unnecessary code from ScriptC construction.\n\nChange-Id: I6680109deb34de841dfade769d556f5060aee423\n"
    },
    {
      "commit": "b135d06cb83db03b1328b7a82f064de7868fb16f",
      "tree": "0b8c1acafca2cff47db950e30e2c6427b29bf7b6",
      "parents": [
        "240ecfe54f280f30439d4aca8069c3d0671eb982"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Aug 19 17:39:42 2014 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Aug 19 20:08:52 2014 -0700"
      },
      "message": "Remove incomplete media router API. (DO NOT MERGE)\n\nChange-Id: I310fadafb5a6b8190a32e5d87f3e1823c87bcef7\n"
    },
    {
      "commit": "15ed2754a308546a54ab1061b4e365d6fe9b898d",
      "tree": "454e2961bd63f756b36fe77187b4225fb55982e7",
      "parents": [
        "f52233df74bb4a3efa1f7b9107353c841eafc933"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Aug 18 15:08:33 2014 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Aug 18 15:48:41 2014 -0700"
      },
      "message": "Fix path for handling system window with app token.\n\nIt is wrong to turn the token into a null appWindowToken; we\nneed to create a new top-level token as if they had passed in null.\n\nChange-Id: I870d8167c6ed456ea8fd58b149809ec9e0103bce\n"
    },
    {
      "commit": "d3edfde51bd069a63e820282421d1a534fcf00ce",
      "tree": "9974d53c7ff2edc8577fd45066844de166fae7ed",
      "parents": [
        "4482e4bb8d1f5fe586b641bc3d6298dc7b8fee80"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Aug 08 17:32:44 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Aug 15 15:53:35 2014 -0700"
      },
      "message": "Add FeatureGroup to PackageInfo\n\nFeatureGroups replace top-level FeatureInfo objects.\nFeatureGroups inherit top-level FeatureInfos but override\nthem if the feature names are the same.\n\nBug:16822121\n\nChange-Id: I80b2cb778a0fbcb4521efce986fba641e0914290\n"
    },
    {
      "commit": "45f7ee8201efbda59b57b1fe637a1b9ffef25bb6",
      "tree": "3cae0465b42aeca12ed8ae7864592c3d40cbe01b",
      "parents": [
        "1d2a1c917f46b6854e91f9867a20abb76ecb794d"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Thu Jun 05 02:54:13 2014 -0400"
      },
      "committer": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Thu Aug 14 16:18:15 2014 -0700"
      },
      "message": "Add metadata and notifications to OneMedia\n\nThis wires up a notification and some basic metadata for testing\nin OneMedia.\n\nChange-Id: I0f2e922536c85caa63f66dae7deb55ffe94fe231\n"
    },
    {
      "commit": "e7ba237ce425824e2065f0d65cdc419e15974dc5",
      "tree": "da22d39cf90d1a1e44533652d62c945172901192",
      "parents": [
        "14914858a0c0d796c1ebf9bf40eba138b8e6d4da",
        "83e315244929ac174e0d87b93ad991b873df8910"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Thu Aug 14 17:02:01 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 14 16:10:21 2014 +0000"
      },
      "message": "Merge \"Fix dates on copywrite in new test code\" into lmp-dev"
    },
    {
      "commit": "83e315244929ac174e0d87b93ad991b873df8910",
      "tree": "f8fc6610fe87f67448ecfe47040bfe0983e19b7d",
      "parents": [
        "b3cca876c2e11b865cb4f83abe2c48a60b95af5b"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Wed Aug 13 13:54:49 2014 -0700"
      },
      "committer": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Wed Aug 13 13:54:49 2014 -0700"
      },
      "message": "Fix dates on copywrite in new test code\n\nSome of the copywrites in the new browser test code still had 2010\nas the year instead of 2014.\n\nChange-Id: I33d19b1ad7f4bbbc8f93d9fb6acc8a92db401807\n"
    },
    {
      "commit": "160c6fc1e9eeac87b6c0bd909aa9402e26046120",
      "tree": "bd6eff51fe5f77f191bd6074ddf676bcaaec9afa",
      "parents": [
        "a31413a325747aa91ff8002a0975e1651ad68325"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Aug 13 10:57:18 2014 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Aug 13 10:59:46 2014 -0700"
      },
      "message": "Remvoe build log spam.\n\nChange-Id: I87a0864d1f4d1c01f660f2bb603b5d0b42e19b53\n"
    },
    {
      "commit": "66613415966f2f1a43cdaa76560eb6d53a05f15d",
      "tree": "a64d715a75a0dcf4809195a00b5f90a076f9c659",
      "parents": [
        "c8f3003533319502b139d18a450bd71ecfe92d7a"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Fri Aug 08 10:48:22 2014 -0700"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Mon Aug 11 10:16:22 2014 -0700"
      },
      "message": "Don\u0027t double count the left/top when using bitmap cache in VectorDrawable.\n\nbug:16861184\n\nChange-Id: I0530602957a434b222725b6fcbc1af165ee05835\n"
    },
    {
      "commit": "0134fd8139611964cb8f58198c7b7a923d62161d",
      "tree": "82f051fcf12b4f30543c6f315c1746561808387b",
      "parents": [
        "6adf47eacce53a5808fc06d80908a3095dc3e711"
      ],
      "author": {
        "name": "Barnaby James",
        "email": "bjames@google.com",
        "time": "Sat Aug 09 14:10:14 2014 -0700"
      },
      "committer": {
        "name": "Barnaby James",
        "email": "bjames@google.com",
        "time": "Sat Aug 09 21:24:52 2014 -0700"
      },
      "message": "Make Test Voice Interactor support new requirements.\n\nAdd settings activity and stub RecognizerService to voice interactor test.\n\nChange-Id: I3c3dda7d2c30eac5e0b889c0c7305dc8f4dfbcb9\n"
    },
    {
      "commit": "ec64709ce042bcf456f9749e079e5f6981cfbbb9",
      "tree": "9ac12058f26bbf10fb5c2909de4149a3d25b77fc",
      "parents": [
        "c1bf40f5c46e5c7597d5cd3f80d8eda83773683e",
        "833f3ccbc8f4dd1ec8abb9121988b99ff34ec4c1"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Sat Aug 09 01:48:35 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Aug 09 00:40:15 2014 +0000"
      },
      "message": "Merge \"AAPT support for feature splits\" into lmp-dev"
    },
    {
      "commit": "81f6d857c1baef5e159bb34dad540baf77572782",
      "tree": "f91da7b2fa2192cc6715124dbbd297e67c846aeb",
      "parents": [
        "770a53288643197a903999fac5469e4f1e6e4b2c",
        "3516800b611a79339a3c188332d13a26e9086b09"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Aug 08 22:36:37 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 08 18:15:47 2014 +0000"
      },
      "message": "Merge \"Second iteration of the UsageStats API\" into lmp-dev"
    },
    {
      "commit": "3516800b611a79339a3c188332d13a26e9086b09",
      "tree": "4c9f8791534cc81cd9562223d2929ee8ff554bfc",
      "parents": [
        "5c09e8ad5ee8e67976066366527ee58792551953"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jul 21 15:25:30 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Aug 08 12:08:15 2014 -0700"
      },
      "message": "Second iteration of the UsageStats API\n\nBased on feedback from API council, updated the API.\nAlso added support for querying the event log.\n\nChange-Id: Ibaa008b9e5bd145acdfe8e20c25c2ed2d96be123\n"
    },
    {
      "commit": "4ed52ab7522708c99bdcc59a74de277701b13f3d",
      "tree": "1776e74066d670094987c6487634a7d0d593dc66",
      "parents": [
        "d18a1da18d1f92acc2669f936da00cd66657e44b",
        "e2a03fe43d1f8eb5a6ada046870dcc35392d8f17"
      ],
      "author": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Fri Aug 08 18:33:09 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 08 16:09:03 2014 +0000"
      },
      "message": "Merge \"freeze screen rotation during memory and app launch test\" into lmp-dev"
    },
    {
      "commit": "e2a03fe43d1f8eb5a6ada046870dcc35392d8f17",
      "tree": "2927bc3e6217856a3b41a429a69e85eba4373c61",
      "parents": [
        "5f9aa0bcea8be860fdf5a35476435616cb5f44f3"
      ],
      "author": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Fri Aug 08 11:30:21 2014 -0700"
      },
      "committer": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Fri Aug 08 11:30:21 2014 -0700"
      },
      "message": "freeze screen rotation during memory and app launch test\n\nChange-Id: I2a039be383562019a0af9470c5053cd3cb1e6142\n"
    },
    {
      "commit": "6d9fe654b5da2f2b7751b6affae535f4ddfa7f64",
      "tree": "135024468cfe2f7ef64d7cf01b51808f20742ce6",
      "parents": [
        "98cb95a998bdbbc61d496bb7348fa5e739199870",
        "477d1197c3c25c01ace7ea4494437c23720a2eb3"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Fri Aug 08 17:33:20 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 08 17:26:08 2014 +0000"
      },
      "message": "Merge \"Combine MediaSession Callback and TransportControlsCallback\" into lmp-dev"
    },
    {
      "commit": "477d1197c3c25c01ace7ea4494437c23720a2eb3",
      "tree": "515faf9a92502ca4fe27388ac373eaa4771cbfa2",
      "parents": [
        "217e8a2b4661d3ae6dc470a8dc07b3145c560c7e"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Wed Aug 06 13:43:22 2014 -0700"
      },
      "committer": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Thu Aug 07 16:54:52 2014 -0700"
      },
      "message": "Combine MediaSession Callback and TransportControlsCallback\n\nThis combines them into a single Callback class and adds default\nhandling to media buttons to check the available actions and call\none of the other methods if appropriate.\n\nChange-Id: If9897d8cf6d8d8046aa85a646c22382f1db1461b\n"
    },
    {
      "commit": "f143ae8ffecc46008b9f6a9fa85d77324b5a145b",
      "tree": "faa5d892b80ed76ee73fa3f0bb1a5359e0cf2d69",
      "parents": [
        "e54f075855d66b76a3aa36c55ead5208dfc981d3"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Thu Aug 07 09:29:39 2014 -0700"
      },
      "committer": {
        "name": "Tenghui Zhu",
        "email": "ztenghui@google.com",
        "time": "Thu Aug 07 22:48:46 2014 +0000"
      },
      "message": "Removing fill and stroke opacity\n\nbug:16850076\n\nattrs/public.xml update will be separated for build break friday.\n\nChange-Id: I5863193d5fecd7e210bd6db5294868f1a70e0d2f\n"
    },
    {
      "commit": "dfe1bdcf43720e65e01b62fbf7f080717c02bce8",
      "tree": "2cb920388a4c008a3803da59387e15b3acb10032",
      "parents": [
        "b1e1dbfb36b658bd2710fedf8c0381a5d89fa302"
      ],
      "author": {
        "name": "Maxim Siniavine",
        "email": "siniavine@google.com",
        "time": "Thu Aug 07 18:48:46 2014 -0700"
      },
      "committer": {
        "name": "Maxim Siniavine",
        "email": "siniavine@google.com",
        "time": "Thu Aug 07 18:48:46 2014 -0700"
      },
      "message": "Improve error detection in app compitibility test\n\nChange-Id: I3ee02e41b835715d1b6aaf8048fbb16a6bd00b8a\n"
    },
    {
      "commit": "cb4e81c7fe1ec843d80f7604a688c71086c23685",
      "tree": "c3ea65e45d02993cd7c3af55222c5cda5ec08998",
      "parents": [
        "3da5ba05d601778ea11dd87c1e8c9e9827e2a520"
      ],
      "author": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Tue Aug 05 15:03:46 2014 -0700"
      },
      "committer": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Thu Aug 07 11:53:02 2014 -0700"
      },
      "message": "Handle microphone contention/Phone calls while recognition is active\n\nInternally we pause the recognition when:\n - a phone call is active/off-hook/ringing\n - or some other application grabs the microphone\n\nwe auto-resume when the condition that caused us to pause reverses.\n\nBoth these events are notified to the client via callbacks so that they can choose to display on their UI,\nthat the recognition is paused for some reason.\n\nBug: 16515468\nBug: 16740806\nBug: 16514535\nChange-Id: Ib274d68522c8cf37d42402c875b16159957657f0\n"
    },
    {
      "commit": "db92e35211d875eab75787c593eea2988c8a560f",
      "tree": "ffe5bb459413e6bc5d2723d25c9324defd8a97eb",
      "parents": [
        "256e1a62673472d685232d88ad4d067eb82deeac"
      ],
      "author": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Thu Aug 07 11:23:03 2014 -0700"
      },
      "committer": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Thu Aug 07 11:23:03 2014 -0700"
      },
      "message": "Fix build break\n\nChange-Id: I7af700671f1a2e910b6e08498381c8adb40631f8\n"
    },
    {
      "commit": "833f3ccbc8f4dd1ec8abb9121988b99ff34ec4c1",
      "tree": "a57e8389088178108de1424faf41ea3bb87c934a",
      "parents": [
        "5c09e8ad5ee8e67976066366527ee58792551953"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jun 18 15:06:01 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Aug 04 18:48:14 2014 -0700"
      },
      "message": "AAPT support for feature splits\n\nThis change allows the developer to add a base package for\nwhich to build a feature split. The generated resource types\nwill begin after the base APK\u0027s defined types so as not\nto collide or override resources.\n\nMultiple features can be generated by first choosing an\narbitrary order for the features. Then for each feature,\nthe base APK and any preceding features are specified\nwith the --feature-of flags.\n\nSo with a base APK \u0027A\u0027 and features, \u0027B\u0027, and \u0027C\u0027,\n\u0027B\u0027 would be built with\n\naapt package [...] --feature-of A [...]\n\nand \u0027C\u0027 would be built with\n\naapt package [...] --feature-of A --feature-of B [...]\n\nChange-Id: I1be66e3f8df9a737b21c71f8a93685376c7e6780\n"
    },
    {
      "commit": "d1c89b1dd68dc39031578dfc6a881c81f742637a",
      "tree": "1bf7db5a25342050f2511f0afeef77883c1e139a",
      "parents": [
        "52e5701eea2da526191e997f9df5c41ef1e1c938"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Wed Aug 06 10:42:21 2014 -0700"
      },
      "committer": {
        "name": "Tenghui Zhu",
        "email": "ztenghui@google.com",
        "time": "Wed Aug 06 18:07:16 2014 +0000"
      },
      "message": "Add stroke related test to the VectorDrawableTest\n\nChange-Id: I7dceebd58d9365cf8e2a31dfeec418aa439bacb6\n"
    },
    {
      "commit": "75847b98f39e521a57042c50e69be9e142788d32",
      "tree": "b86d2a0657fc34724ac0a48a378833d51855263b",
      "parents": [
        "b0d767dcf17dd393646b8fc3e8c9f46dfe12e230"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Tue Jul 29 13:10:17 2014 -0700"
      },
      "committer": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Tue Aug 05 14:30:27 2014 -0700"
      },
      "message": "Add display metadata and change strings to CharSequences\n\nThis adds some fields for display purposes to MediaMetadata and also\nmakes the default for all text CharSequence instead of String. Also\nadds a hidden method for getting a Description for the metadata.\n\nbug: 11708293\nChange-Id: I0ed58d9ac3aeff41325c4ccf5fed0539bbf03b4d\n"
    },
    {
      "commit": "40b8ef99a5132a970903e33d3c8ee087d0502a93",
      "tree": "42d9b0ddb95a249d2b71577f047a6afddd9fe117",
      "parents": [
        "af8a8f3a7d03a626a644d4b62c87ff1a64ae95f8",
        "d3b8223377b8046280e4c09e728edc600171f941"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Aug 05 19:54:20 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 05 00:34:22 2014 +0000"
      },
      "message": "Merge \"SoundTrigger API update.\" into lmp-dev"
    },
    {
      "commit": "fd80746bb9d67be3a9f87dcb9264785a53631b74",
      "tree": "4879081753358d4cff7b9f37fd49813b3ee21c67",
      "parents": [
        "faa49bc896be859d5bcf2da3bddd4507b5e6494c"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Tue Aug 05 11:49:32 2014 +0100"
      },
      "committer": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Tue Aug 05 14:50:34 2014 +0100"
      },
      "message": "Set the TTS voice name for the default language.\n\nThis changes makes the initial, default language set and\nthe #setLanguage call with the default language as input\nexactly the same.\n\nPreviously, the requests made after the initial default language\nset were missing the name of the default voice.\n\n+ Some tests clean-up. Some of them fail due to issues with\nLocale#toLanguageTag upper-casing the variant field.\n\nChange-Id: I5470617007fe45462b7198bf62a03eb5fe47a590\n"
    },
    {
      "commit": "d3b8223377b8046280e4c09e728edc600171f941",
      "tree": "88d3e6bb021548e90b415791c3dbddc8870be60c",
      "parents": [
        "2265c8f70088b88b34ee9e315f7ae5519de1cdba"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jul 30 08:57:39 2014 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Aug 04 16:35:27 2014 -0700"
      },
      "message": "SoundTrigger API update.\n\nAdd sound model update callback.\nAdd native service state change callback.\nAdd vendor UUID in sound model description.\nAdd coarse confidence level in recognition event.\nAdd capture format in recognition event.\n\nBug: 12378680.\n\nChange-Id: Id63437819ec7b9a4a69e1ff6185b747e20cad95e\n"
    },
    {
      "commit": "5eb5cde467081d1af628e5463ba55f110265a86f",
      "tree": "6d1731cfd531dba4ba109fe1910d2798dfc77620",
      "parents": [
        "5c09e8ad5ee8e67976066366527ee58792551953"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Mon Aug 04 13:07:51 2014 -0700"
      },
      "committer": {
        "name": "Tenghui Zhu",
        "email": "ztenghui@google.com",
        "time": "Mon Aug 04 20:46:20 2014 +0000"
      },
      "message": "Fix one typo and add linear progress bar in the test.\n\nChange-Id: Ib516fd4a27000d8e69a6640386332140ff0d6fdd\n"
    },
    {
      "commit": "2c0273e50a3162595e9a54030166f2369b039a5a",
      "tree": "6075295a33de952b996038ffdf10f22594a1cf4b",
      "parents": [
        "fc0fc0e341f2a2d707d5a8eafd65db34bdffb35c"
      ],
      "author": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Fri Aug 01 11:32:03 2014 -0700"
      },
      "committer": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Fri Aug 01 17:46:27 2014 -0700"
      },
      "message": "Add a flag for multiple triggers with same recognition session\n\nAlso annotate the flags with @IntDef to make things clearer and safer\n\nAdd more debug logging\n\nRevert to start/stop being synchronous since telephony and microphone will\nneed to be handled internally.\n\nBug: 16731586\nBug: 16514535\nBug: 16549061\nChange-Id: I83695d52e9547269c95d443e4d921c9238b7401e\n"
    },
    {
      "commit": "668327d0286591324fa7592ee9b39255076e2165",
      "tree": "afe925721cebd3edc447b1c360bb2ef95e42e77c",
      "parents": [
        "6bf8be555267c55bae6615bcd5cd6903d5e06745"
      ],
      "author": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Tue Jul 29 12:53:34 2014 -0700"
      },
      "committer": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Thu Jul 31 15:48:26 2014 -0700"
      },
      "message": "Tighten the checks around a detector being invalidated\n\nDon\u0027t call back for a detector being marked invalid because\nthat happens when someone else obtains a detector or VIS shuts down,\nin either case we don\u0027t want a loop where two entities keep creating new detectors\nand being invalidated.\n\nDon\u0027t call back on an invalid detector for availability change/detected/started and stopped\nonly propagate errors.\n\nThis helps us with cases where a callback for the previous VIS may get called and then crash because it\ntries to make calls without being the current VIS.\n\nIn the new scheme of things, if the VIS changes, or the current VIS obtains a new AlwaysOnHotwordDetector,\nthe previous one is shutdown and internally marked as invalid and all calls to it fail with an IllegalStateException.\n\nBug: 16629417\nChange-Id: I74417bf76ba80916ebc21b042c18b3467857733e\n"
    },
    {
      "commit": "63e646eed5a8d7f5d04544ac8628f65b0173cf3a",
      "tree": "06461d85d0b53e9ed5e50724f64e7e670ac44c24",
      "parents": [
        "805f6ebf17e2791624bb1a30834b4c1cc65583bf"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jul 30 11:40:39 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jul 30 21:53:48 2014 +0000"
      },
      "message": "Add shared library support to aapt dump\n\nAAPT dump should be able to handle dynamic references\nthat often come with shared library resources.\n\nBug:16678251\nChange-Id: I6c8cd943145aab20ca9db9694c8c433b3c64279b\n"
    },
    {
      "commit": "1ed12ddb8c46193cc4d790b9c7d6a5d61afb3311",
      "tree": "98c42d193596c9c24dc94b8c1df391081160a7d3",
      "parents": [
        "38e2d104d80e092af7d997db025b2a9b47150470"
      ],
      "author": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Tue Jul 29 14:41:50 2014 -0700"
      },
      "committer": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Wed Jul 30 11:43:41 2014 -0700"
      },
      "message": "Make startRecognition async\n\n- This is needed for telephony and audio integration which should happen via async callbacks\nthat\u0027ll end up starting/stopping recognition.\n\ne.g. if a startRecognition happens when in a phone call - the onDetectionStarted will get called once the phone\ncall ends.\n\nFor now the transient stoppages due to internal reasons will not be propagated back to the client.\n\nBug: 16514535\nBug: 16515468\nChange-Id: I1b2b8edd28f5c5e67c453f66c23e1a67a626114e\n"
    },
    {
      "commit": "6817337118655d5792e36e954b123e6daa4174a6",
      "tree": "bacd4155507f64d701c3c7a3e4fa70da89d7d658",
      "parents": [
        "94703148bc522b9f3fab9257fd07021e678d43f2"
      ],
      "author": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Mon Jul 28 13:25:30 2014 -0700"
      },
      "committer": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Tue Jul 29 11:24:51 2014 -0700"
      },
      "message": "Read the keyphrase ID from the recognition event\n\nBug: 16516658\nChange-Id: Ibeee81c9543aa1091bb075066cfc2269107f13c0\n"
    },
    {
      "commit": "ee410da42b6b8352213f03f7725fd041f703b035",
      "tree": "d79add63a7762d26f9d8396876fc8cc47ce0cb75",
      "parents": [
        "c503896a4d0cab029bca56cf7ac18ae182729a0a"
      ],
      "author": {
        "name": "Matthew Williams",
        "email": "mjwilliams@google.com",
        "time": "Fri Jul 25 11:30:40 2014 -0700"
      },
      "committer": {
        "name": "Matthew Williams",
        "email": "mjwilliams@google.com",
        "time": "Tue Jul 29 11:11:41 2014 -0700"
      },
      "message": "remove possible JobScheduler race in cancel()\n\nClient can jobFinished() before getting a cancel msg.\n1) Do better clean up of JobServiceContext after client jobFinished()\nto remove superfluous MSG_CANCELs\n2) When processing MSG_CANCEL check whether the context is still active\n3) Do JobServiceContext cleanup before calling back to JobSchedulerService\nClient can get a cancel msg even after calling jobFinished() (opposite to above)\n1) explicitly check whether there are any MSG_CALLBACKs in the queue before\nprocessing a MSG_CANCEL. If there are we can throw away the cancel.\n\nBug: 16547638\nChange-Id: I90644586c7895a9ce97de752a5d657faf7f74b78\n"
    },
    {
      "commit": "ae9e68a3494bfa1bcc02864737f1df0c4c6fa719",
      "tree": "5d4e066297e805c57ac39c9c6fedabbe278ca326",
      "parents": [
        "591a824c5df7f3a90722424308861d8f101e217f",
        "d7a94da476e9b783acf0673ed938cc3fc2cc6ba5"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Jul 29 17:36:44 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 28 22:45:16 2014 +0000"
      },
      "message": "Merge \"Have AEP GL feature depend on GLES 3.1 in badging\" into lmp-dev"
    },
    {
      "commit": "40495e054591ed4bc110c710c46996ef163664c1",
      "tree": "049c568b90fb8dd2aacc0491cc64a128bc58f621",
      "parents": [
        "1f33d77f0430efb2d7eb532e360ba9a30004ffe7"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Tue Jul 29 08:49:51 2014 -0700"
      },
      "committer": {
        "name": "Erik Pasternak",
        "email": "roboerik@android.com",
        "time": "Tue Jul 29 15:51:07 2014 +0000"
      },
      "message": "Fix checkbuild\n\nChange-Id: I66321c6da4f921cee2db6f9f05312a6a8edc66d3\n"
    },
    {
      "commit": "d7a94da476e9b783acf0673ed938cc3fc2cc6ba5",
      "tree": "5ccb769c5fa39a847a39523a98ad8ffbb8882013",
      "parents": [
        "eb527ef7a651def56ab29c0595e75df76ea63e3b"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jul 25 14:38:54 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jul 25 22:45:33 2014 +0000"
      },
      "message": "Have AEP GL feature depend on GLES 3.1 in badging\n\nAAPT dump badging should output the uses-gl-es tag with\na version of 3.1 when android.hardware.opengles.aep is\ndeclared as a feature.\n\nChange-Id: I8affc6dad574c8303c6ba9810ad8e6e205ea9506\n"
    },
    {
      "commit": "8470857ee43444868a38d0e760981386880d6ce2",
      "tree": "b3532a22c9fc9c7ece84cad1246f6ea219b44f25",
      "parents": [
        "ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7a"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Fri Jul 25 10:51:09 2014 -0700"
      },
      "committer": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Fri Jul 25 11:01:45 2014 -0700"
      },
      "message": "Fix build\n\nChange-Id: Ia2a09417451dd9cdca0a6351b8ddd00f9195f361\n"
    },
    {
      "commit": "194124965f7c48d0aaa304a5809aa81414be0892",
      "tree": "6e1546c3984b0a459b5938846f95a1e5dce0c1aa",
      "parents": [
        "422570ea3fe5bf6c4dbc4d96cf47734252ffe703",
        "6c77e104bcb265d29f357b7fb5737153c048bcdb"
      ],
      "author": {
        "name": "wsmlby",
        "email": "wsmlby@google.com",
        "time": "Thu Jul 24 23:25:50 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 24 20:48:02 2014 +0000"
      },
      "message": "Merge \"Add memory tracking for persistent proccesses and launcher\" into lmp-dev"
    },
    {
      "commit": "6c77e104bcb265d29f357b7fb5737153c048bcdb",
      "tree": "f45ea289a0488159c024044fdb139cc7a652bdce",
      "parents": [
        "35efc633d0af55ebe6402bd03b91f1903927cec5"
      ],
      "author": {
        "name": "wsmlby",
        "email": "wsmlby@google.com",
        "time": "Thu Jul 24 14:27:39 2014 -0700"
      },
      "committer": {
        "name": "wsmlby",
        "email": "wsmlby@google.com",
        "time": "Thu Jul 24 15:58:54 2014 -0700"
      },
      "message": "Add memory tracking for persistent proccesses and launcher\n\nChange-Id: I5228bd67884dc8b77207a597f279fd4032c7f9d9\n"
    },
    {
      "commit": "c2c0bdc10a16bb78979533093a021470071bbecb",
      "tree": "97bda10486e77999d02bce2f8ac903b8638fb9d1",
      "parents": [
        "bd9b106806f9792be210cc2d9848d8b1f4b9664d",
        "5f3e1f2a2dfaa4d1abdda4d0cd7871aea82ffcbd"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Mon Jul 28 20:25:50 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 24 20:48:02 2014 +0000"
      },
      "message": "Merge \"s/thumbnail/icon in the browsing api.\" into lmp-dev"
    },
    {
      "commit": "5f3e1f2a2dfaa4d1abdda4d0cd7871aea82ffcbd",
      "tree": "adecba9b5990440c52fde72be8aad79b4ebbd8c3",
      "parents": [
        "e0b8c378b7b4881396346116a9c1d633d1a4eb9f"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Mon Jul 28 11:35:36 2014 -0700"
      },
      "committer": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Mon Jul 28 11:35:36 2014 -0700"
      },
      "message": "s/thumbnail/icon in the browsing api.\n\nChange-Id: I73bf76ed9628872094db74aef48a8e68864d6b4d\n"
    },
    {
      "commit": "39c12fab49075b715c253c68c84b5c10c3150197",
      "tree": "bcb5cff2b35c50575cb8e4b60ea35e8a635b16e7",
      "parents": [
        "e0b8c378b7b4881396346116a9c1d633d1a4eb9f"
      ],
      "author": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Fri Jul 25 18:37:29 2014 -0700"
      },
      "committer": {
        "name": "Sandeep Siddhartha",
        "email": "sansid@google.com",
        "time": "Mon Jul 28 11:10:32 2014 -0700"
      },
      "message": "Use blob (shared memory) for large data in sound model/recognition event/config\n\nAlso add a missing null check in writeBlob\n\nBug: 16516353\nChange-Id: Ie702f8daae541cab7c2cee6e13d49e7fc84c84e1\n"
    },
    {
      "commit": "d4bd75be4fda41f88a9478a9ec3f4019ba7ddf85",
      "tree": "ad419ee2e64970a92447628b5a85d81e3cfc2835",
      "parents": [
        "5bec5af97122592fa7006d7709f44018e0cd96f7",
        "2c72b6822debb08fe997926eedc110f62d287d34"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Jul 24 20:29:43 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 24 15:36:09 2014 +0000"
      },
      "message": "Merge \"Add \u003cfeature-group\u003e tag and change aapt badging\" into lmp-dev"
    },
    {
      "commit": "0f208eb707926f0afc1ce073be866bedd4955aa2",
      "tree": "cb14defbd86887db0bfc4928c2a8ac19b4b57306",
      "parents": [
        "28c0b714ac7f6c98d63aab106447bfd1e727fae2"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sat Jul 26 15:14:21 2014 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sat Jul 26 15:41:21 2014 -0700"
      },
      "message": "Remove DozeHardware since it will not be used.\n\nBug: 16516536\nChange-Id: I14597d3c9470c94e3bc5b8cff500d2fe6b2fd977\n"
    },
    {
      "commit": "a95c8abb366d9c39450513335f550b56da13b30a",
      "tree": "93bd8f429df7d0b8aa1aa7d22d4a60f60e36944b",
      "parents": [
        "9e8ade2eb7ee835963473c9cf6faaf5423b0b048"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Wed Jul 23 09:47:50 2014 -0700"
      },
      "committer": {
        "name": "Tenghui Zhu",
        "email": "ztenghui@google.com",
        "time": "Fri Jul 25 23:26:41 2014 +0000"
      },
      "message": "API REVIEW: VectorDrawable\n\n- Merge \u003csize\u003e and \u003cviewport\u003e attributes all in to top-level \u003cvector\u003e tag\n- Indent attributes under \u003cgroup\u003e in java doc.\n- Updata android:stroke to be android:strokeColor, likewise android:fill\n- Instead of android:clipToPath, make this a different clip-path tag.\n- Document units of the various attributes\n- Add example code for defining a VectorDrawable resource\n\nMore than that:\n\u003d Refactor the code to better support clipPath as a sub-class.\n\u003d Update all the xml files to use the new attributes and clip-path tag.\n\nTODO:\n-- Remove clipToPath, since that should happen on build break Friday.\n\nbug:16488254\n\nChange-Id: I6db5680ef83cb26c8f064a60fc7d6e7142974b0f\n"
    },
    {
      "commit": "2c72b6822debb08fe997926eedc110f62d287d34",
      "tree": "467e1c3b5b131a3d2991f9d6597fc2d3371a94ab",
      "parents": [
        "921ec8056a3010d0a21400f97312cf3f7d97ffaa"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Jun 24 09:56:01 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jul 23 14:11:46 2014 -0700"
      },
      "message": "Add \u003cfeature-group\u003e tag and change aapt badging\n\nA \u003cfeature-group\u003e represents a set of features required\nfor an app to be compatible with a device. Multiple\n\u003cfeature-group\u003e elements represent a logical \u0027or\u0027\nof required features.\n\nFeatures defined in the old way with \u003cuses-feature\u003e tags\nunder the \u003cmanifest\u003e tag are automatically added to each\nfeature-group defined.\n\nDefining a \u003cfeature-group\u003e means that any default\nfeatures are not included (such as android.hardware.touchscreen)\nand declared permissions do not imply any features.\n\nChange-Id: I45626f0fdc546e47bcf2aead7ef05ebcca12b023\n"
    },
    {
      "commit": "69b078599b8d8bc3e8f94d6cab881145f4e2c129",
      "tree": "a5e05fdfe4dd495b414a1e6f1f829ae1011f57f7",
      "parents": [
        "77bfc8f22892227ebc42afd282bd044742956be2"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Jul 22 23:21:12 2014 -0700"
      },
      "committer": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Wed Jul 23 17:56:57 2014 -0700"
      },
      "message": "Allow apps to be slow at loading children and thumbnails by making those functions allowed to be asynchronous.\n\nChange-Id: Ibcaee3f0f8d9ba14f1b002df9c6d4594c6278045\n"
    },
    {
      "commit": "77bfc8f22892227ebc42afd282bd044742956be2",
      "tree": "691cb09cefa06c6a3efeab15fc09e0add6276782",
      "parents": [
        "e647099e14114475e9a2827a10dab2d2e36308c4"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Jul 22 23:21:45 2014 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Jul 24 00:45:56 2014 +0000"
      },
      "message": "s/MediaBrowseService/MediaBrowserService/\n\nChange-Id: Ie07308739cdf94796a900e15527616608e02a3d4\n"
    }
  ],
  "next": "5a836f74df027bb568da17fbde4e641b6a56d2a9"
}
