)]}'
{
  "log": [
    {
      "commit": "8671feab630c1938691f44502ff7be9c7b03e7c4",
      "tree": "4cf51771e8251c01b2bd453e2325a64df609f0d8",
      "parents": [
        "d93d206cfe45f0ca4252995e781ec1137599ada9"
      ],
      "author": {
        "name": "Ram Periathiruvadi",
        "email": "ramperry@google.com",
        "time": "Fri Dec 08 18:35:10 2017 -0800"
      },
      "committer": {
        "name": "Ram Periathiruvadi",
        "email": "ramperry@google.com",
        "time": "Mon Jan 08 08:25:17 2018 -0800"
      },
      "message": "Add a hidden API to inject location.\n\nNew API allows system clients with LOCATION_HARDWARE and\nACCESS_FINE_LOCATION to inject a location to the Location Manager.  This\nis useful in products like Auto, where the location needs to be cached\nacross reboots.\n\nBug: b/64125396\nTest: Foll. were tested:\n1. location can be injected when lastLocation is not available\n2. location cannot be injected when lastLocation is already available\nAlso, tested location availability on different devices for sanity.\nChange-Id: I1fd060caafed0431074ae64439ac52e99e0d6032\n"
    },
    {
      "commit": "d87cf9176237bd3233edded7dbb9276226d764dc",
      "tree": "b0aa4dcc1e317b37eba4b7ef655cb69e66966984",
      "parents": [
        "41b745ca0d117c07419f9255485b8ca5094c653d"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Tue Dec 05 09:31:52 2017 -0800"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Thu Dec 21 13:07:03 2017 -0800"
      },
      "message": "Providing GNSS Model Name \u0026 Year\n\nGNSS Model Year moves from a TestApi to public\nGNSS Model Name is connected from a new .hal to public\n\nBug: 38003769\nTest: Builds, works with CTS \u0026 Test App on Pixel 2\nChange-Id: I3e0a56c60e1a4d298e120df11ffd37b06ecea050\n"
    },
    {
      "commit": "48f1a647655f3479bc655d2c3c4873c6aa9b712c",
      "tree": "3d159dcc82a85ac3ed23170e00f5cf1268ec494a",
      "parents": [
        "d8171027f373d919eefc572c296364d47807a89d"
      ],
      "author": {
        "name": "gomo",
        "email": "gomo@google.com",
        "time": "Fri Nov 10 20:35:46 2017 -0800"
      },
      "committer": {
        "name": "gomo",
        "email": "gomo@google.com",
        "time": "Wed Dec 13 13:38:31 2017 -0800"
      },
      "message": "Duty Cycling and Low Power Mode GNSS feature implementations\n\nImplementaion of 2 GNSS Android-P features:\n- The Duty Cycling API to enable high accuracy applications development\n- The Low Power Mode GNSS API to save power when indoor\n\nBug: 64009176\nTest: Existing unit tests still pass.\nChange-Id: I3ba3b86a635a54927c694fdd66a038757e843937\n"
    },
    {
      "commit": "fab2e2cbaab77d85c708ede54029b46d938f8e66",
      "tree": "b56fec5c68e63ffc69a4bd228303102b7f868f9d",
      "parents": [
        "839edb1781264eb268711075add1e4e31a18caed"
      ],
      "author": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Tue Nov 21 11:57:30 2017 -0800"
      },
      "committer": {
        "name": "Maggie Wang",
        "email": "yiranwang@google.com",
        "time": "Thu Dec 07 23:22:35 2017 +0000"
      },
      "message": "Send MODE_CHANGING broadcast before location mode change.\n\nWhen location mode is about to change in Settings app, send\nMODE_CHANGING broadcast.\n\nFixes: 28057031\nTest: manual\nTest: robotests\nChange-Id: Id26325520211a8934c1670dfcd12e8d339766308\n"
    },
    {
      "commit": "bb6468ba73b76863d16108fb91010b2254649f30",
      "tree": "fb9c826a39294578c51ca10b757206d37a921a1d",
      "parents": [
        "eb7d335641ec1b9c91c1609a94cb1cbdba1d3987",
        "818347f0564467b24324d8d79b0cc21fd7a95dec"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 31 23:52:11 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 31 23:52:11 2017 +0000"
      },
      "message": "Merge \"Fixing javadoc typo from gerrit 3027804\""
    },
    {
      "commit": "818347f0564467b24324d8d79b0cc21fd7a95dec",
      "tree": "93d33114b2d5b2f1cc61e0356ab900610afe8a79",
      "parents": [
        "4193d0e135c75eba1d38f63df29a3fa5ba6cfa8d"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Tue Oct 31 14:12:27 2017 -0700"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Tue Oct 31 14:12:27 2017 -0700"
      },
      "message": "Fixing javadoc typo from gerrit 3027804\n\nBug: 65369254\nTest: Automated build/sanity only - just a comment change\nChange-Id: I819b2f11f91454719269927ae93382253170938e\n"
    },
    {
      "commit": "e10c61a5f7e18ac9b1dccb3df27e4983b1a4b0ea",
      "tree": "444c61dbee809c50ddb78de3d18992b575aa6b84",
      "parents": [
        "4193d0e135c75eba1d38f63df29a3fa5ba6cfa8d"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Mon Oct 23 14:44:41 2017 -0700"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Wed Oct 25 14:13:56 2017 -0700"
      },
      "message": "Clarifying GnssClock field\n\nBased on partner feedback\n\nTest: Doc only - build-check\nChange-Id: I30ba539f5baad69aeb6973167067265b22964cc4\n"
    },
    {
      "commit": "252e0908bd729eaf41c6d53af0ea8111bd9464d7",
      "tree": "51054c4be346fc8b050660b8c9cc9b0466031ce1",
      "parents": [
        "cc78a9b63667ed62ea67070ad9abbf34a62b8317"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Fri Oct 06 12:57:04 2017 -0700"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Wed Oct 18 15:27:30 2017 -0700"
      },
      "message": "Location \u0026 GNSS Measurement Documetation Fixes\n\nClarifying documenation of SNR, Vertical Accuracy, and\nAccumulated Delta Range.\n\nChange-Id: I2684c57e0f4aff2925549e01cbe4f546910f93e0\nFixes: 65369254\nTest: Builds (comments only)\n"
    },
    {
      "commit": "70e34ce4c57f0bce498bb05b91d6a45cb87a8c7b",
      "tree": "a1506d3024c544079bfb17565bf5e210fe5703bc",
      "parents": [
        "668feb252a226f39acbad801bf8e256a04cb3e1f"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Thu Aug 24 17:04:48 2017 -0700"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Thu Aug 31 08:47:24 2017 -0700"
      },
      "message": "Correcting Speed and Bearing Uncertainty Doc\n\nTest: Build by treehugger, code review as comments only.\nChange-Id: Ib072bf42c51af8e91ae7554097e839316956dea1\n"
    },
    {
      "commit": "43336af356148a22c85066d666d2a037b771b9df",
      "tree": "c4e1d84f13bf3f612bd950c8a5d7346cdacd5079",
      "parents": [
        "bfcff7be3099338fffca4af65967c030d47dd0e4"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Tue Aug 08 15:22:39 2017 -0700"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Tue Aug 08 15:24:44 2017 -0700"
      },
      "message": "Remove misleading Location Accuracy comment\n\nTest: Treehugger to verify build (comment only)\nChange-Id: Iea3c473219e21a58b01e613d14700d6972f5cce6\n"
    },
    {
      "commit": "168f12a056f7ef3adb9f9d52aaa51977b4082213",
      "tree": "a949fcd22f839c5664979f1c98db033f354a0890",
      "parents": [
        "b1ab0ff21e83735808f1468fd4e7056de4541cf0"
      ],
      "author": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Mon Jul 10 11:55:10 2017 -0700"
      },
      "committer": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Mon Jul 10 19:00:27 2017 +0000"
      },
      "message": "Average of top 4 CNO\n\nAddition of average of top 4 CNO to GNSS metrics\n\nBUG: 62727230\nChange-Id: Icef0ff5c25596fc1ae787907c0aea305eaf156d6\n"
    },
    {
      "commit": "7f2cfed525e806efd7a9ba658b54583579f27fe5",
      "tree": "5555641307192156d9ca338060b8d4514f6774e7",
      "parents": [
        "17652d85ecbbbababa7bec457130024346ff4b18"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Tue Jun 27 19:59:19 2017 -0700"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Wed Jun 28 15:13:10 2017 -0700"
      },
      "message": "Ensure complete GnssStatus construction\n\nUsing volatile reference \u0026 final member pattern.\n\nBug: 37517406\nTest: basic GNSS \u0026 GPS Status output works\nChange-Id: I5650149e0a3f63a52734c8f044d38f3956819921\n"
    },
    {
      "commit": "28f6dc951223a017f9abc90599662cb3f4995ad1",
      "tree": "b0b9563a9afbff8e02eadcf4ba1e8fefcd64c639",
      "parents": [
        "3de8df76b5f2f7d4aa2f37a1b7c1d0100fc94059",
        "67cb5f5210dd53d6e4726ab77bc5fc5164ab1a3c"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Tue Jun 06 16:17:39 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 16:17:39 2017 +0000"
      },
      "message": "Merge \"Give Doclava our manifest; more permission docs.\" into oc-dev am: 65d4cbba37\nam: 67cb5f5210\n\nChange-Id: Ic4c30cdb8bbfda5b3703eb3c7c36c1bf8ab3a216\n"
    },
    {
      "commit": "ec68b46bc85b2317053da7e2933876fc6e51ac2f",
      "tree": "2255e80e732a2b4ea68c50685d1dfc8a3956509f",
      "parents": [
        "811e9d6ee820b84922ff6a9794a91c1ebfa958f2",
        "7a2e4a848602ddb861f9f35cb93edbdca32a7db1"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Tue Jun 06 15:48:24 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 15:48:24 2017 +0000"
      },
      "message": "Merge \"Annotate @SystemApi with required permissions.\" into oc-dev am: c1406978a4\nam: 7a2e4a8486\n\nChange-Id: Ib629e25dbf047c110feaf03e4ff744b5c6df9aeb\n"
    },
    {
      "commit": "bfc4fcde9f756337fc8d0867ff04549b08688fff",
      "tree": "59c1a1cbbfd8483c335409c4c3a820a9a82c2f66",
      "parents": [
        "d86b8fea43ebb6e5c31691b44d8ceb0d8d3c9072"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Jun 05 17:38:17 2017 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Jun 05 17:38:19 2017 -0600"
      },
      "message": "Give Doclava our manifest; more permission docs.\n\nWe\u0027ve seen some @SystemApi methods protected with non-system\npermissions, so give Doclava the platform AndroidManifest.xml so it\ncan parse the actual permission protection levels to look for APIs\nthat are letting in non-system apps.\n\nAlso document more @SystemApi permissions.\n\nThis is purely a docs change; no logic changes are being made.\n\nTest: make -j32 update-api\nBug: 62263906\nChange-Id: Ie0f0a5fb0033817bcc95060f2183a52ae4ae7b06\n"
    },
    {
      "commit": "d86b8fea43ebb6e5c31691b44d8ceb0d8d3c9072",
      "tree": "547566f25eb693f99c48ff9afd81fafaef44e435",
      "parents": [
        "373ab72112a652982bf51bb3f50b0678065be0aa"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Jun 02 17:36:26 2017 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Jun 05 13:27:11 2017 -0600"
      },
      "message": "Annotate @SystemApi with required permissions.\n\nMost @SystemApi methods should be protected with system (or higher)\npermissions, so annotate common methods with @RequiresPermission to\nmake automatic verification easier.\n\nVerification is really only relevant when calling into system\nservices (where permissions checking can happen on the other side of\na Binder call), so annotate managers with the new @SystemService\nannotation, which is now automatically documented.\n\nThis is purely a docs change; no logic changes are being made.\n\nTest: make -j32 update-api \u0026\u0026 make -j32 offline-sdk-docs\nBug: 62263906\nChange-Id: I2554227202d84465676aa4ab0dd336b5c45fc651\n"
    },
    {
      "commit": "455c3037c14b3fc4693c75b87cc57423cc8318c9",
      "tree": "892e553c1c84afcc0dfb5fcc929848493c288ad7",
      "parents": [
        "5bf855675c9e54f472d44f44f6b056aad985c569"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Thu May 11 10:06:47 2017 -0700"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Thu May 11 10:06:47 2017 -0700"
      },
      "message": "Fix typo in Galileo TOW flag\n\nTest: Builds, code inspect it\u0027s just comments.\nChange-Id: I014f9a418f8d2845fbdc83f79298fe9f604e5f80\n"
    },
    {
      "commit": "dff73b6a0434b35d76500978df7978a20e85a257",
      "tree": "c49d5c95fcb4357eb900bdd3acc43fa7b77adc43",
      "parents": [
        "4b64614e6e0a4c137acd1fcc6067ce0d43091c8a",
        "e24e12df358914a90ae02400294ae0b7ffff8fbd"
      ],
      "author": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Tue May 02 23:27:43 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 02 23:27:43 2017 +0000"
      },
      "message": "Merge \"Added Channel for Network Initiated Notifications\" into oc-dev am: 84ed81ed39\nam: e24e12df35\n\nChange-Id: Id050d77a7df66451311713cdd54209109cda9d7a\n"
    },
    {
      "commit": "1d355403153cb81076f4eafc38c840c813116c68",
      "tree": "a37cf7995c5ea1c39ee9f60be6891cefb585526f",
      "parents": [
        "5f0e436548ea3bd10cef480c194da7da6080ac1e"
      ],
      "author": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Mon May 01 13:29:04 2017 -0700"
      },
      "committer": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Tue May 02 20:44:08 2017 +0000"
      },
      "message": "Added Channel for Network Initiated Notifications\n\nBug\u003d37659896\n\nChange-Id: I1c04a9455c320330efbcb92c352fc31b16ed8378\n"
    },
    {
      "commit": "f9045a9c529cce34cfa2891448193eb9591d99c3",
      "tree": "679e5ed7cb3f660c729756b3791b093fac056862",
      "parents": [
        "e015f53fe469018fe587b5591d89d68dcf1e97ea",
        "d78417d6cc354b20dc6627186c4b6dcdbe6097c3"
      ],
      "author": {
        "name": "Yipeng Cao",
        "email": "tccyp@google.com",
        "time": "Sat Apr 29 22:49:26 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Apr 29 22:49:26 2017 +0000"
      },
      "message": "Merge \"Fixed the hasCarrierFrequency flag in GnssStatus (part1)\" into oc-dev am: 80e1b2fc56\nam: d78417d6cc\n\nChange-Id: I804d261ffe382ea283fdbbd0e3973810a723315e\n"
    },
    {
      "commit": "2171781a7ca12f6a8c9093a682210d0eb489b628",
      "tree": "bf540909fb08b2dd42bd74deff3385f0377e588b",
      "parents": [
        "afd8d9e2b289fe623118e849e0915f940a19bf2f"
      ],
      "author": {
        "name": "Yipeng Cao",
        "email": "tccyp@google.com",
        "time": "Thu Apr 27 18:35:24 2017 -0700"
      },
      "committer": {
        "name": "Yipeng Cao",
        "email": "tccyp@google.com",
        "time": "Fri Apr 28 02:11:59 2017 +0000"
      },
      "message": "Fixed the hasCarrierFrequency flag in GnssStatus (part1)\n\nBug: 37757180\nFixes: 37757180\nTest: 1. built img locally and flash the device\nmake -j 40 \nvendor/google/tools/flashall\n2. run cts\ncts-tradefed run cts -m CtsLocationTestCases --test\nandroid.location.cts.GnssStatusTest\n\nChange-Id: I5046dbe28518812192de20daca91a8511a1558c0\n"
    },
    {
      "commit": "4a1d2779d551e7e37fb87b3bd8be4779eb30bff6",
      "tree": "fe04187521e4c327bf2d859484b33e79506539fe",
      "parents": [
        "f84fedf2d4e59a220e2ce6cdaf371c304abd1312",
        "3c688678642e2fa851484b37420d9871701aa651"
      ],
      "author": {
        "name": "Yu Liu",
        "email": "yudiliu@google.com",
        "time": "Wed Apr 19 01:46:47 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 19 01:46:47 2017 +0000"
      },
      "message": "Merge \"Remove newly added remove methods in Location and deprecate the old ones, this is the request from the android API council Test: Existing unit tests still pass. BUG: 36552859\" into oc-dev am: 500c1d0749\nam: 3c68867864\n\nChange-Id: I3233a604cda1ca48fad524b5c02d54847d67cfc0\n"
    },
    {
      "commit": "b87243cb43753c6f90d54afd3bc0839882742942",
      "tree": "023fa35a24e05f9b91ba284d55c20fc2443c0fb3",
      "parents": [
        "a86e3d70e336dede717f4d06cea35d6b3ebcf4d4"
      ],
      "author": {
        "name": "Yu Liu",
        "email": "yudiliu@google.com",
        "time": "Tue Apr 18 16:08:29 2017 -0700"
      },
      "committer": {
        "name": "Yu Liu",
        "email": "yudiliu@google.com",
        "time": "Tue Apr 18 16:12:16 2017 -0700"
      },
      "message": "Remove newly added remove methods in Location and deprecate the old ones, this is the request from the android API council\nTest: Existing unit tests still pass.\nBUG: 36552859\n\nChange-Id: Ib4cdcef90be3d5b3be329dd780bcb40275b89ef4\n"
    },
    {
      "commit": "c831fe6183b0dd34837cb2fd3082573d8f6729b5",
      "tree": "7200960cb2f55754abc21f0a9e7dba082282200f",
      "parents": [
        "7775be8a74418be83105927bbf7e0b2d1b108c16",
        "5303f33bdcd52dbedb0ca02043fb17101df5d611"
      ],
      "author": {
        "name": "Yu Liu",
        "email": "yudiliu@google.com",
        "time": "Fri Apr 14 15:30:05 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 14 15:30:05 2017 +0000"
      },
      "message": "Merge \"Fix some issues came up from the reviews of the newly added APIs Test: Existing unit tests still pass. BUG: 36554361 Change-Id: I6c2dab2e0df7f8578f92c70907f45aa69909892c\" into oc-dev am: e425b366ba\nam: 5303f33bdc\n\nChange-Id: I138cf20ba4b804fb3627458acf6796203c37be39\n"
    },
    {
      "commit": "efb8882b47a50f155efdb1e4cdec027a0d000b7a",
      "tree": "386025ab513df6e605105017281d86bf5aa1b7ca",
      "parents": [
        "c4ca1b5677798d30493283891ce55a8fead2f672",
        "cfe9e61ce4029da61b973f5b80fccafdde4c9cc3"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 13 19:53:09 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 13 19:53:14 2017 +0000"
      },
      "message": "Merge \"ECBM SystemProperty cleanup\" into oc-dev"
    },
    {
      "commit": "5303f33bdcd52dbedb0ca02043fb17101df5d611",
      "tree": "2b9cc2ad7698be99ef743454826c121ff8a46b7c",
      "parents": [
        "dc4fd3c84764b1155527984cb0cbe7c522b943d3",
        "e425b366ba5fb2228182b8ac3d3fbaf396194cdc"
      ],
      "author": {
        "name": "Yu Liu",
        "email": "yudiliu@google.com",
        "time": "Thu Apr 13 19:34:48 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 13 19:34:48 2017 +0000"
      },
      "message": "Merge \"Fix some issues came up from the reviews of the newly added APIs Test: Existing unit tests still pass. BUG: 36554361 Change-Id: I6c2dab2e0df7f8578f92c70907f45aa69909892c\" into oc-dev\nam: e425b366ba\n\nChange-Id: I371260b7a82bbda02f978c2396385c96fd03ec66\n"
    },
    {
      "commit": "0e342e1fdb892529b9fbc073dbe18c8704af0355",
      "tree": "0175dd88cda2ba38fcbc84e29a8f87f90e5ebe0b",
      "parents": [
        "7040f573f3bb3b424d5bf00856ee5c7e421575c0"
      ],
      "author": {
        "name": "Yu Liu",
        "email": "yudiliu@google.com",
        "time": "Tue Mar 28 16:50:11 2017 -0700"
      },
      "committer": {
        "name": "Yu Liu",
        "email": "yudiliu@google.com",
        "time": "Wed Apr 12 23:02:35 2017 +0000"
      },
      "message": "Fix some issues came up from the reviews of the newly added APIs\nTest: Existing unit tests still pass.\nBUG: 36554361\nChange-Id: I6c2dab2e0df7f8578f92c70907f45aa69909892c\n"
    },
    {
      "commit": "cfe9e61ce4029da61b973f5b80fccafdde4c9cc3",
      "tree": "82f642cc6aded018c347959326912c665a43af5b",
      "parents": [
        "c240c9b134fe4d1843433e76c0f6721bd712918c"
      ],
      "author": {
        "name": "Shuo Qian",
        "email": "shuoq@google.com",
        "time": "Wed Apr 12 22:11:17 2017 +0000"
      },
      "committer": {
        "name": "Shuo Qian",
        "email": "shuoq@google.com",
        "time": "Wed Apr 12 22:36:00 2017 +0000"
      },
      "message": "ECBM SystemProperty cleanup\n\n- Add getEmergencyCallbackMode() method in the TelephonyManager.java\nto get the boolean value for ECBM callback mode from the phone through\nITelephony.aidl/java interface\n\n- Use the added TelephonyManager Api to replace the \u0027get\u0027 of\nPROPERTY_INECM_MODE system property in the framework/base\n\nChange-Id: I83fbdeef5c0b43a8fc16ece044c9e191e9922bce\nTest: manual\nBug: 30361624\n"
    },
    {
      "commit": "c77146ceb15783ac12b7ceb9e5a3f83285b55466",
      "tree": "913ff21b6d1d8db1562e218fac50d6ef77ac218b",
      "parents": [
        "5f676fa7b6ecd85f64ef988d42fa40361a0feb46",
        "56d3af66801edac661fbe192f4d84cd9058fe513"
      ],
      "author": {
        "name": "Shuo Qian",
        "email": "shuoq@google.com",
        "time": "Wed Apr 12 22:11:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 12 22:11:17 2017 +0000"
      },
      "message": "Merge \"ECBM SystemProperty cleanup\" am: 4718606368 am: 40cde7b71f am: 36611a0958\nam: 56d3af6680\n\nChange-Id: Ida75e1835bc99a328baeee71b6838581800916b0\n"
    },
    {
      "commit": "56d3af66801edac661fbe192f4d84cd9058fe513",
      "tree": "93e1fe15c700de3b2863e2d92270c10444ccb552",
      "parents": [
        "9a5d0477508ed7ff2a912a89a46959fce94e5b04",
        "36611a09588ce2c6bce480f8933ee4f69fbad84e"
      ],
      "author": {
        "name": "Shuo Qian",
        "email": "shuoq@google.com",
        "time": "Wed Apr 12 21:11:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 12 21:11:58 2017 +0000"
      },
      "message": "Merge \"ECBM SystemProperty cleanup\" am: 4718606368 am: 40cde7b71f\nam: 36611a0958\n\nChange-Id: Ib68a4e3b34ad4d76e4b254350b523eaa424b30f9\n"
    },
    {
      "commit": "d199113e97a266cb8ae4f1cb262ab022c62f41d0",
      "tree": "ab471e385e307e5bf4cc009453d5323a1b9db63e",
      "parents": [
        "4a43598bd6c622d1e45b6b5d138cae72f5ea2e47"
      ],
      "author": {
        "name": "shuoq",
        "email": "shuoq@google.com",
        "time": "Tue Jan 10 13:14:02 2017 -0800"
      },
      "committer": {
        "name": "sqian",
        "email": "shuoq@google.com",
        "time": "Tue Apr 11 14:59:29 2017 -0700"
      },
      "message": "ECBM SystemProperty cleanup\n\n- Add getEmergencyCallbackMode() method in the TelephonyManager.java\nto get the boolean value for ECBM callback mode from the phone through\nITelephony.aidl/java interface\n\n- Use the added TelephonyManager Api to replace the \u0027get\u0027 of\nPROPERTY_INECM_MODE system property in the framework/base\n\nTest: manual\nBug: 30361624\n\nChange-Id: I355d69820b157f23e077a95a13f8509ee0fa5874\n"
    },
    {
      "commit": "bb608c8958a96b450094417482ba05126ce0c8f0",
      "tree": "4f9034fd7fa22e1352c93dfdcc5146ea7f9c06d3",
      "parents": [
        "0eea46e0e91b8bb75e6de37995f8d72e5433e5b6"
      ],
      "author": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Thu Mar 16 11:33:34 2017 -0700"
      },
      "committer": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Wed Apr 05 12:00:08 2017 -0700"
      },
      "message": "Addition of GNSS key performance indicator logs\n\nBug: 35963181\nTest: Manual\nChange-Id: Ibbc8986eb5c52b8e0065b5fd2fdb8579eda11949\n"
    },
    {
      "commit": "681d71120041b769fb2ca3938f4016239ed744fe",
      "tree": "8a15a1eb847edc18334b9dc89b2754f6f4e4cf9f",
      "parents": [
        "ba9e399ffd3d001e94dae930222f158baac70655"
      ],
      "author": {
        "name": "Soonil Nagarkar",
        "email": "sooniln@google.com",
        "time": "Thu Feb 23 17:14:16 2017 -0800"
      },
      "committer": {
        "name": "Soonil Nagarkar",
        "email": "sooniln@google.com",
        "time": "Fri Feb 24 12:28:32 2017 -0800"
      },
      "message": "Throttle GNSS measurements and GNSS navigation\nmessages in background (completely).\n\nTest: manual\nChange-Id: I32e3572c5ce32cd39b22e62f6b3499d292e1badc\n"
    },
    {
      "commit": "cf879db3666523404ff7e15e77b11434732b4a06",
      "tree": "b479463245b8ad1f2c70862856ace256ada7f619",
      "parents": [
        "85adc2148854ed63569457da651e0213eaeaf0a4"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Thu Jan 12 13:57:38 2017 -0800"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Tue Feb 07 14:55:21 2017 -0800"
      },
      "message": "GNSS Batching - Default Implementation\n\nConnections from .hal layer, through to\nLocation Manager System APIs\n\nBug: 31974439\nTest: builds, boots, ordinary GNSS \u0026 new GNSS batching\n      basic functional checks on Marlin\nChange-Id: If75118c27b5ed34cfc16c9f817b60a3be5485095\n"
    },
    {
      "commit": "d1e856cb9e664c6167141b97e0aa0830c898083a",
      "tree": "1dac668f42cda835994194d8d113084d93c25fa3",
      "parents": [
        "127ba323d9ae2107ed58039f24ffade2c27ff7c9"
      ],
      "author": {
        "name": "gomo",
        "email": "gomo@google.com",
        "time": "Fri Jan 20 00:02:18 2017 -0800"
      },
      "committer": {
        "name": "gomo",
        "email": "gomo@google.com",
        "time": "Sun Jan 22 22:45:09 2017 -0800"
      },
      "message": "Make the comments of some of the raw GNSS measurements more clear.\n\nTest: Existing unit tests still pass.\n\nChange-Id: I8c0a506b2c9f7979f8cdb33c9e65db53ff1c4b2b\n"
    },
    {
      "commit": "127ba323d9ae2107ed58039f24ffade2c27ff7c9",
      "tree": "0a5cb62208c1750d957710b71fd5326e20e73c33",
      "parents": [
        "e8264a92ffed883139b7ec882845fba07c17ac2e"
      ],
      "author": {
        "name": "gomo",
        "email": "gomo@google.com",
        "time": "Sun Jan 15 20:26:48 2017 -0800"
      },
      "committer": {
        "name": "gomo",
        "email": "gomo@google.com",
        "time": "Wed Jan 18 19:48:28 2017 -0800"
      },
      "message": "Unhide public methods for API Council review.\nTest: Existing unit tests still pass.\nChange-Id: I49b81f99e4e8d8300fbc6b3d74f336d4f291d171\n"
    },
    {
      "commit": "4402af6be9de4782d218170203033618f079551d",
      "tree": "ef0c04995d28d30189c98991abcb25e3683824bd",
      "parents": [
        "acb1d3922437b1fc0f8ed3bc53cb2c315f6e669e"
      ],
      "author": {
        "name": "gomo",
        "email": "gomo@google.com",
        "time": "Wed Jan 11 13:20:13 2017 -0800"
      },
      "committer": {
        "name": "gomo",
        "email": "gomo@google.com",
        "time": "Sun Jan 15 18:02:21 2017 -0800"
      },
      "message": "GNSS O Features according to go/o-gps-hal\n\nAdded \"Tow Known\" as a possible gnss measurement state. As well added Automatic Gain Control (AGC)\nto allow jammer detection. Also added the GNSS carrier frequeny to SV status. Also added vertical\nGPS position uncertainty, speed uncertainty and bearing uncertainty. Also propagate locaton new\nfields to geofence engine.\nTest: Existing unit tests still pass.\n\nChange-Id: I472b2fd2516cb7614877dea4bb054a34f50844dc\n"
    },
    {
      "commit": "a2bbfbcf8920ecec5700c1824b0436118cada5be",
      "tree": "d1634fd6ff7935ded8eb5b7dc46d5c818114ebbb",
      "parents": [
        "5721e75a0a2b18a0a6b139360afaf5247b93827d"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Mon Dec 19 18:53:09 2016 -0800"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Fri Dec 23 13:18:16 2016 -0800"
      },
      "message": "Removing @removed methods and constants\n\nSeveral methods, plus a few hashmaps,\nhelper classes, and some constants\nexisted for an early builds\nof NYC, and were marked @removed, and are\nhere finally removed.\n\nBug: 28208055\nChange-Id: If650d83c0dc573e922342d09360ecf9a5bb0c98a\nFixes: 28208055\nTest: GMaps, AndroiTS GPS Test, GnssLogger \u0026 CtsVerifier\n      All run fine on a Pixel\n"
    },
    {
      "commit": "c06f184ae92179414dfa133506e60cc05c6ed43a",
      "tree": "c9f87f094c6cca55d0a9e8829e95ddbe1219e96c",
      "parents": [
        "35b99da33a34620283423ec84023359867b69645"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Nov 09 12:25:44 2016 -0700"
      },
      "committer": {
        "name": "Amin Shaikh",
        "email": "ashaikh@google.com",
        "time": "Fri Dec 02 15:17:20 2016 -0800"
      },
      "message": "Move dump() to dumpAsync(), more oneway calls.\n\nWhen calling out to dump services hosted by external apps, use\ndumpAsync() to avoid hanging if the remote process is wedged.\n\nTest: builds, boots, runs with minimal logs triggered\nBug: 32715088\nChange-Id: I70aa2666ae21dae8f09ded2063bed359c0b210c5\n"
    },
    {
      "commit": "2ea296029f115376aaa7f4336d0082bdf47eee29",
      "tree": "16e2b22d0cd6a4e98aafbe26cfe03332515d30d6",
      "parents": [
        "44b97824c9646b1b86d503a66f4ed67f36f8b918"
      ],
      "author": {
        "name": "Hridya Valsaraju",
        "email": "hridya@google.com",
        "time": "Tue Sep 13 08:38:09 2016 -0700"
      },
      "committer": {
        "name": "Hridya Valsaraju",
        "email": "hridya@google.com",
        "time": "Wed Nov 23 17:16:59 2016 -0800"
      },
      "message": "Modify GnssLocationProvider to use Treble Gnss HAL\n\nTest: GPS functionality tested in binderized and pass-through modes on\nAngler. All interfaces except AGnssRil, GnssNavigationMessage and\nGnssNi. AGnssRil and AGnssNavigationMessage are not implemented by conventional\nGPS HALs in Google devices that would be upgrading to O.\n\nChange-Id: Ie4decb4c47892725c8c89bad3f48581550facff7\n"
    },
    {
      "commit": "850c83e6da3b34a4eab804133420247fc9dbb8a1",
      "tree": "fd66511c6b01c0c12f232b97633d4e3f90a40ad9",
      "parents": [
        "0a17db1cc5942ea000ca87bb72853de57a15ec64"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Nov 09 12:25:44 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Nov 09 12:25:48 2016 -0700"
      },
      "message": "Move dump() to dumpAsync(), more oneway calls.\n\nWhen calling out to dump services hosted by external apps, use\ndumpAsync() to avoid hanging if the remote process is wedged.\n\nTest: builds, boots, runs with minimal logs triggered\nBug: 32715088\nChange-Id: I70aa2666ae21dae8f09ded2063bed359c0b210c5\n"
    },
    {
      "commit": "0a17db1cc5942ea000ca87bb72853de57a15ec64",
      "tree": "7a0b51064dc654901bd69857c2f3a14fe8d5871a",
      "parents": [
        "9d710882602a8a0ad661cf10ce2cb421f3255ee2"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Nov 04 11:23:46 2016 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Nov 07 17:03:37 2016 -0700"
      },
      "message": "Detect non-oneway calls leaving system_server.\n\nTo protect system stability, any Binder calls leaving the\nsystem_server must carefully be performed using FLAG_ONEWAY (or\nthe \u0027oneway\u0027 verb in AIDL) which prevents the call from blocking\nindefinitely on the remote process.\n\nIn this CL, the system_server uses the new Binder.setWarnOnBlocking()\nmethod to enable detection by default for all remote Binder\ninterfaces.  It can also use Binder.allowBlocking() to allow\nblocking calls on certain remote interfaces that have been\ndetermined to be safe.\n\nThis CL adds the \u0027oneway\u0027 verb to several interfaces and methods\nwhere it should have been added, and marks a handful of system\nContentProviders as being safe to call into.  Also, we assume that\nany services obtained from ServiceManager are part of the core\nOS, and are okay to make blocking calls to.\n\nTest: builds, boots, runs with minimal logs triggered\nBug: 32715088\nChange-Id: Ide476e120cb40436a94b7faf7615c943d691f4c0\n"
    },
    {
      "commit": "4e82fe51207bbd8ceaec356b4215e338ec63a31e",
      "tree": "e8be8db74464e3a3d18ac408d06d0d4fd5609791",
      "parents": [
        "9cac4568e50687e9c0f85dedb2d9ee6a36bd0ff8"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Mon Oct 24 13:33:47 2016 -0700"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Mon Oct 24 13:33:47 2016 -0700"
      },
      "message": "Fix GNSS status delivery to the callbacks\n\nBug: 32357457\nChange-Id: I8f2b8dae5472cb81313417e85c092dca0aae5bd9\n"
    },
    {
      "commit": "eed2c7d6614e21adaa0539cbf31c90c7a2ae4eb1",
      "tree": "1997095ea64c88372fe431e8d0ed9edd00fdc30d",
      "parents": [
        "5e4e684a8360a831612c80f38fe91488a1564210",
        "b10a6dc963245dff04177223d956105a31b31d9d"
      ],
      "author": {
        "name": "Kevin Hufnagle",
        "email": "khufnagle@google.com",
        "time": "Mon Sep 26 23:30:19 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Sep 26 23:30:19 2016 +0000"
      },
      "message": "docs: Fixed misspelling in \"Address\" class overview.\nam: b10a6dc963\n\nChange-Id: I226f72cd0618166e61a95d95598c95a037e0b670\n"
    },
    {
      "commit": "b10a6dc963245dff04177223d956105a31b31d9d",
      "tree": "b007f454f5da1b1149d89ccc5470d8f725b0660f",
      "parents": [
        "738c21253ae8562718958860f9a4803ad7d477ef"
      ],
      "author": {
        "name": "Kevin Hufnagle",
        "email": "khufnagle@google.com",
        "time": "Thu Sep 22 16:14:27 2016 -0700"
      },
      "committer": {
        "name": "Kevin Hufnagle",
        "email": "khufnagle@google.com",
        "time": "Thu Sep 22 16:14:27 2016 -0700"
      },
      "message": "docs: Fixed misspelling in \"Address\" class overview.\n\nBug: 30608455\nChange-Id: Ic7d8492b15eeffe32393c018f3512101d5f0bcae\n"
    },
    {
      "commit": "30fe9229c50229a77ce2baaffca508a15bda3b6c",
      "tree": "6f2daa9945e6bcb4d2ae5e841ee408285b97f65f",
      "parents": [
        "bb2d9ab98e679e4a2e231657d467e23d02d5ec30"
      ],
      "author": {
        "name": "David Christie",
        "email": "dnchrist@google.com",
        "time": "Thu Jul 07 14:07:19 2016 -0700"
      },
      "committer": {
        "name": "David Christie",
        "email": "dnchrist@google.com",
        "time": "Thu Jul 07 14:07:48 2016 -0700"
      },
      "message": "Fix issue where GnssMeasurements wouldn\u0027t allow empty measurements.\n\nBug: 29966456\n\nChange-Id: Ie74ed921d4ebe43e3ec086ef8fb96d54f992fa38\n"
    },
    {
      "commit": "98ad88811c76f7334c285cc970a4107f7a716b5a",
      "tree": "48080a3a3474aef9194de3f6ebe953e9c3da676b",
      "parents": [
        "d05a7b5972cb06f711cc8cfa66efa9f0f6d901a5"
      ],
      "author": {
        "name": "Gina Dimino",
        "email": "gdimino@google.com",
        "time": "Tue May 31 17:25:48 2016 -0700"
      },
      "committer": {
        "name": "Gina Dimino",
        "email": "gdimino@google.com",
        "time": "Wed Jun 01 16:13:53 2016 -0700"
      },
      "message": "Docs: Suppress errors in SystemApi Build\nBug: 28427390\n\nChange-Id: Ifea85bf7b1fcdd30a3d7f61bd17d0efba6368aa4\n"
    },
    {
      "commit": "f6527aebbce5e2b6b771fa42ae499c2e7584bd26",
      "tree": "c549624871a100b8765fa416e811757da994efa2",
      "parents": [
        "42d4a337a3b1a14f4d9daf6eb8275a01ba20e680"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Mon May 23 15:23:12 2016 -0700"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Tue May 24 09:25:02 2016 -0700"
      },
      "message": "Adding SBAS offset to Gps/Gnss SvStatus converter\n\nOpposite sign of Glonass \u0026 BDS offsets.  Noticed after screenshot search \u0026 further testing.\n\nBug: 28623392\nChange-Id: I6a7c98f455ee7df278eed985ba57ec1c12d888e0\n"
    },
    {
      "commit": "49d9891c573f8c4994841b24f8d90690c342e8ae",
      "tree": "a55b9330e3ac92e294d523d66cfb26b3af06c4ae",
      "parents": [
        "7996b96311eec2343c16d3677fb834d2ec7cf082"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Tue May 17 16:14:48 2016 -0700"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Thu May 19 09:55:42 2016 -0700"
      },
      "message": "Mapping up/down of legacy Gps vs. Gnss Status\n\n- Maps incoming (from HAL) GpsSvStatus for Glonass, Beidou, SBAS, and QZSS\n  from defacto (NMEA-like) numbers to internal platform with detected constellation.\n- Maps outgoing (to Java API) GpsStatus getSatellite info back into the de-facto\n  overloaded (beyond 32) \"GPS\" ID numbers.\n- Simplifies Glonass ID definition for N (comments only.)\n- This enables GPS/GNSS Test apps a non-degrading upgrade path.\n\nBug: 28623392\nChange-Id: I9a19db1f11267032c6927daed767df5afa51c770\n"
    },
    {
      "commit": "e50607efab69c62d1a7b5ba9bb3dff47449483c9",
      "tree": "901d18a5a7eccff33747faa668e70b7db70136e3",
      "parents": [
        "d3caf46a850fb3191562fc5e05c2aa8b5912b598"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Thu Apr 07 19:25:24 2016 -0700"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Fri Apr 08 14:10:42 2016 -0700"
      },
      "message": "Fixed the sign error in GnssClock\n\nBug: 28068514\nChange-Id: I71b68acb70d4139f94f3829bd4a280d926e251de\n"
    },
    {
      "commit": "e8abe8e5ad830bd130b258c6801d75f6542200b5",
      "tree": "762df770300d022ed1e5e90833cd392da1a52798",
      "parents": [
        "36712853a9d0b57702ee5b1fd936ff0b9f48c151"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Fri Apr 01 10:32:05 2016 -0700"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Apr 06 17:54:35 2016 -0700"
      },
      "message": "Addressed API review comments and updated JavaDoc\n\nBug: 27274532\nBug: 27948390\nChange-Id: I0255d2511deab788dcab9815def9c1287a50b7f9\n"
    },
    {
      "commit": "e296ab692a661500969dedd3675d9d9f0f58e389",
      "tree": "9756c9e8e71df88cf9734ab09355ab7e1742fc4f",
      "parents": [
        "48d8a39b7114565838f0db7c7b5ef4bea0819cae",
        "4fb5dc1e4aad0d7df0f6af03560a340e81bf1f7c"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Mar 30 19:52:56 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 30 19:52:57 2016 +0000"
      },
      "message": "Merge \"Returns the correct elevation in GnssStatus\" into nyc-dev"
    },
    {
      "commit": "0f5e32d8eb869e11aae626a61dcc353adac77b20",
      "tree": "68423ad4cc52cf65e3da6e810c37aafaa89b4937",
      "parents": [
        "840172ac1ecc514098d0cad41e009dab95542620",
        "ff7c8b9e9d28fa4fb4a5cd43ffc4ffae9b23706e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Mar 30 19:41:04 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 30 19:41:05 2016 +0000"
      },
      "message": "Merge \"Fix CRLF\" into nyc-dev"
    },
    {
      "commit": "4fb5dc1e4aad0d7df0f6af03560a340e81bf1f7c",
      "tree": "a8d8c3633030a2b6cacf416e07e8cb0440a45017",
      "parents": [
        "029a28b7d665b0c1cfbc1f6795b18a744d2b4ba3"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Tue Mar 29 13:15:02 2016 -0700"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Tue Mar 29 13:15:02 2016 -0700"
      },
      "message": "Returns the correct elevation in GnssStatus\n\nBug: 27902867\nChange-Id: I57ea191e531305268d4a87f9d444425f20ef7f8e\n"
    },
    {
      "commit": "a89a392aef5ca24093d54e005e58c18f206cd5f6",
      "tree": "278ecd134cc04eae2e36f2e91704cef8a275571f",
      "parents": [
        "feade806098a0fe6bc53e1a531dedb6af13fac57",
        "047b05ea6e290997f1bcc29fd6c4ec5f81708f9f"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Mon Mar 28 18:22:26 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 28 18:22:28 2016 +0000"
      },
      "message": "Merge \"Added missing constants to GnssMeasurement\" into nyc-dev"
    },
    {
      "commit": "047b05ea6e290997f1bcc29fd6c4ec5f81708f9f",
      "tree": "a67000def34a60cf82f7227ec2afa98dbbebca2c",
      "parents": [
        "275b4499bc7c57acf6b038a930579494cb83a70b"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Mar 23 15:33:56 2016 -0700"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Fri Mar 25 12:56:32 2016 -0700"
      },
      "message": "Added missing constants to GnssMeasurement\n\nBug: 27816668\nChange-Id: Ib1638f5ac3941c4b6d9babca0acdc80df498e0af\n"
    },
    {
      "commit": "145ff558adb3fa946c792f7d5d49e8f9e746e331",
      "tree": "bb94610ac62748bf0036e16d9c457fa148c9213c",
      "parents": [
        "1dd114e5ab9ea6d9fee905a4700103b7584b9596",
        "17350f925f5ee4d4df92c768c92e442179b1a420"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Tue Mar 22 23:08:38 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 22 23:08:39 2016 +0000"
      },
      "message": "Merge \"A few changes to the measurement implementation\" into nyc-dev"
    },
    {
      "commit": "17350f925f5ee4d4df92c768c92e442179b1a420",
      "tree": "3217ebecce1a7f2f48692d199bcd0f9091c002e4",
      "parents": [
        "275b4499bc7c57acf6b038a930579494cb83a70b"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Tue Mar 22 13:56:52 2016 -0700"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Tue Mar 22 15:29:24 2016 -0700"
      },
      "message": "A few changes to the measurement implementation\n\n- Fixed the device crashing bug in JNI code\n- Fixed a typo (\u0027lock\u0027 \u003d\u003e \u0027clock\u0027)\n- Added hardware clock discontinuity count in toString()\n\n(cherry picked from commit 3a21b02ee2dc8f2c6c879109757d89a2be5d720a)\n\nChange-Id: I6dbda85abda20da0240ac08b22b81729eae7b6f0\n"
    },
    {
      "commit": "620a28bad2b1ddabddf2d78b5a20a762ebc29205",
      "tree": "bbb57f33ecd00ea5ecdd5c95dd6aa09a6383d189",
      "parents": [
        "77e645123f3ab9d290b588c5806162054ff0c161",
        "a04c7a7c6442b8c6f87f5dd11fc5659cdb92decc"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Fri Mar 18 19:54:50 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 18 19:54:52 2016 +0000"
      },
      "message": "Merge \"Mark more Bundles as being defusable.\" into nyc-dev"
    },
    {
      "commit": "77e645123f3ab9d290b588c5806162054ff0c161",
      "tree": "4aad6642926e0f0ff0bad5a125414e64ad86dfd5",
      "parents": [
        "71c56189682d22472a1564897dfb55080718f87b",
        "2b67c07d82f59f9b776414576c21dd31ed9dac48"
      ],
      "author": {
        "name": "Julius D\u0027souza",
        "email": "jdsouza@google.com",
        "time": "Fri Mar 18 19:53:54 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 18 19:53:56 2016 +0000"
      },
      "message": "Merge \"CTS: Add @hide annotations to several @IntDef elements\" into nyc-dev"
    },
    {
      "commit": "ff7c8b9e9d28fa4fb4a5cd43ffc4ffae9b23706e",
      "tree": "b3258cc93764e281120719952dea52ffb2107fcc",
      "parents": [
        "b2cc929657926750336b22a9333c3738dfa38e29"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Mar 18 12:28:06 2016 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Mar 18 12:30:09 2016 -0700"
      },
      "message": "Fix CRLF\n\nChange-Id: I6740b5fefae2f16d0ce247ff78e7cb5a6f3f8642\n"
    },
    {
      "commit": "2b67c07d82f59f9b776414576c21dd31ed9dac48",
      "tree": "051bf01cfa81ce6dedf4d0260ac093fbc0c6e350",
      "parents": [
        "400349907ec5bb09887e5ba9f9cd1fa1f3d06716"
      ],
      "author": {
        "name": "Julius D\u0027souza",
        "email": "jdsouza@google.com",
        "time": "Thu Mar 17 21:41:29 2016 -0700"
      },
      "committer": {
        "name": "Julius D\u0027souza",
        "email": "jdsouza@google.com",
        "time": "Fri Mar 18 12:18:18 2016 -0700"
      },
      "message": "CTS: Add @hide annotations to several @IntDef elements\n\nBug: 27232186\n\nChange-Id: Idd70359e22606a5ff21dfaffd119528cedd08b5a\n"
    },
    {
      "commit": "a04c7a7c6442b8c6f87f5dd11fc5659cdb92decc",
      "tree": "5039b2f994821a82b73ac03d21a37116d57111c1",
      "parents": [
        "885b742bb66660947d8335e9a4f5a4eef2e45ff9"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Mar 18 12:20:36 2016 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Mar 18 12:20:39 2016 -0600"
      },
      "message": "Mark more Bundles as being defusable.\n\nThey\u0027re destined for the system, so they\u0027re okay to look inside.\n\nBug: 27726127\nChange-Id: Ic85c308a8efe6f9b8652952717c72b3c663d328a\n"
    },
    {
      "commit": "275b4499bc7c57acf6b038a930579494cb83a70b",
      "tree": "e85e75fb1637a57b70b726fefc99410eeee8ee13",
      "parents": [
        "aa839adad2f1f3061061997c43582499d6f01af4",
        "b9048f88ce6e9073f94139f4d1b709cf2149d9e9"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Thu Mar 17 19:23:38 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 17 19:23:40 2016 +0000"
      },
      "message": "Merge \"Removed unused methods from GnssMeasurement\" into nyc-dev"
    },
    {
      "commit": "1778b030f7e372d6211ea2f374e89289bc8e8ac3",
      "tree": "3963c0617e89c3ed9d2444d27add729686e8b973",
      "parents": [
        "62006a72a66ddc5849b28d7ceaaa304b66aa3dc9"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Mar 16 18:28:33 2016 -0700"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Thu Mar 17 10:40:47 2016 -0700"
      },
      "message": "Fixed bugs in serialization and object cloning\n\nBug: 27621461\nChange-Id: I52cbf874d506cc5f6dee73d1a14b5dc07f87bd39\n"
    },
    {
      "commit": "b9048f88ce6e9073f94139f4d1b709cf2149d9e9",
      "tree": "7cb3cff49ee36a580ac63d8e2dc7f60ebee08186",
      "parents": [
        "62006a72a66ddc5849b28d7ceaaa304b66aa3dc9"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Sun Mar 13 23:14:00 2016 -0700"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Mon Mar 14 01:28:45 2016 -0700"
      },
      "message": "Removed unused methods from GnssMeasurement\n\nBug: 27633183\nChange-Id: I6304a431b75aaa338b6f22e6d213cd5f4f10cd60\n"
    },
    {
      "commit": "0f1ab04516d3e9a72eda22c998910f49f2bd40bb",
      "tree": "81f739e86d2db648384d4618966056d54a556cac",
      "parents": [
        "235bbb1bb50b221da048063181f0f76a13e8014b"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Tue Mar 08 00:35:35 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Mar 09 11:32:43 2016 -0800"
      },
      "message": "Modified the API to make coverage test possible\n\nBug: 27462840\nChange-Id: Idfd2c3c108b25f8be9046fd4bb72dbc57edc24bd\n"
    },
    {
      "commit": "76a620f0482ba54a4921c7c7e7eeb8ea87c12d3e",
      "tree": "143a2b80541afba313a780ed11a3729dbf4446c6",
      "parents": [
        "063a570ef0a0b24e3344fcb56351a3e08c52da28"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Fri Feb 26 19:53:01 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Mar 02 16:41:47 2016 -0800"
      },
      "message": "Addressed the review comments from API Council\n\nFollowing are the review comments from API Council:\n\n(Places below that reference \"s/foo/bar/\" below are suggesting that \"foo\" be\n replaced with \"bar\".)\n\nGnssClock\n-- Class docs should not refer to \"GPS\" at the top level\n-- s/InNs/Nanos/\n-- s/Sec/Second/\n\nGnssMeasurement\n-- s/In// for \"InUnitname\"\n-- s/Sec/Second/\n-- s/Ms/Millis/\n-- s/Deg/Degrees/\n-- STATUS_GPS_LOCATION_DISABLED -\u003e STATUS_GNSS_LOCATION_DISABLED\n\nGnssMeasurementsEvent.Callback\n-- \"returns\" -\u003e \"reports\" in the method docs as the methods return void\n\nLocationManager\n-- register/unregisterGnssMeasurementEventCallback -\u003e\n   register/unregisterGnssMeasurementsEventCallback (plural)\n\nGnssNavigationMessage\n-- MESSAGE_TYPE_ constants -\u003e change to just TYPE_; the \"MESSAGE\" is redundant\n   with the class name\n-- is a signed byte/short ok based on the standard here? If not consider using\n   int in the public api\n\nGnssStatus\n-- Make sure @IntDef exists for the constellation type\n-- Please append unit types for values returned to match GnssMeasurement methods\n\nGnssStatusCallback\n-- Please document time base/units for the time parameter of onFirstFix\n\nBug: 27385557\nChange-Id: Ifed6a2eca3fd7ba89b3ded6964a70376235af8f4\n"
    },
    {
      "commit": "f8880561e67e1da246970b49b14285efd4164ab1",
      "tree": "0db1266500429ffcab717b898faf71355c58e203",
      "parents": [
        "2362bdf2c73b24ff3589ecd670c3bde366cde45e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Feb 26 13:03:01 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Feb 27 17:17:01 2016 -0700"
      },
      "message": "When system server goes down, crash apps more.\n\nSimilar to first patch, but now using new \"rethrowFromSystemServer()\"\nmethod which internally translates DeadObjectException into\nDeadSystemException.  New logic over in Log.printlns() now\nsuppresses the DeadSystemException stack traces, since they\u0027re\nmisleading and just added pressure to the precious log buffer space.\n\nAdd some extra RuntimeInit checks to suppress logging-about-logging\nwhen the system server is dead.\n\nBug: 27364859\nChange-Id: I05316b3e8e42416b30a56a76c09cd3113a018123\n"
    },
    {
      "commit": "38bce7925c58fe585144f25ea6c954bab4f5da42",
      "tree": "e234e635038d2659c8bd431e1df5055638f190f4",
      "parents": [
        "0cbfdd3a201f6565a54aa87c3de09955e328c451"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Feb 24 17:17:38 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Thu Feb 25 15:46:41 2016 -0800"
      },
      "message": "Removed clock type from GnssClock\n\nBug: 27341583\nChange-Id: I5ffd891737c3ddf83d9c6a78aa36c94858591199\n"
    },
    {
      "commit": "9363b949a104786c87cd2cd18f206ff3c1957e5e",
      "tree": "81fcf32fd22f5eb32a0e47e3cec9e9fad5ef90a1",
      "parents": [
        "f79c887c5997f4a7735987a524869421a1a3ac2d"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Tue Feb 16 18:07:00 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Fri Feb 19 16:59:28 2016 -0800"
      },
      "message": "Finalized GPS\u003d\u003eGNSS changes with documents\n\nBug: 27098594\nChange-Id: I24529e60d8eb9b48b644cf01e5efc684e6f04839\n"
    },
    {
      "commit": "120480f17ae18bbe8c6fa7ec4854281fdf349b59",
      "tree": "d92b4fedd451cd4f0978a9d730c40454507f8e73",
      "parents": [
        "d9eec15d84f4c58c4fd47b2c6b052d1e7b538779"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Sun Feb 07 18:08:19 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Thu Feb 11 11:29:40 2016 -0800"
      },
      "message": "Optimized the memory consumption and renamed PRN\n\nBug: 27058251\nChange-Id: I2309943b1a4e7565868ed0f247b84edc631fbd59\n"
    },
    {
      "commit": "d46d308562b78af6a06d014e17cb67a6e3103b30",
      "tree": "255846f65e8fa569e35da9cc797d0efc34b8cfce",
      "parents": [
        "818aa2c2c46addae934fb6cd42f889affc9ef747"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Tue Feb 02 17:25:32 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Tue Feb 02 17:25:32 2016 -0800"
      },
      "message": "Worked around the crash caused by API renaming\n\nBug: 26885642\nChange-Id: I1f1ad76d18444d5f250397ef491e1dd4858f0a1d\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": "e5a0e21b6fcba32e6d7486c5e7736d7d0348d55c",
      "tree": "fd3b57e23597ba8e9ada9b745e4fb3e754980b7b",
      "parents": [
        "82f893d6df236d257ab2142dd63e72865a5e4f00"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Mon Jan 25 18:02:17 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Jan 27 18:01:33 2016 -0800"
      },
      "message": "Framework support to read newly added fields\n\nChange-Id: Ie43395addd102656a4dbf9c25111ac50ec9afe41\n"
    },
    {
      "commit": "82f893d6df236d257ab2142dd63e72865a5e4f00",
      "tree": "1c083fe43c1b5ca27da703be70a99e1048d75402",
      "parents": [
        "a8b7bb5a50d8ad197c6f32eb308919c11b52ce74"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Thu Jan 21 18:15:33 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Jan 27 17:38:24 2016 -0800"
      },
      "message": "Added an API to query GPS hardware version info\n\nChange-Id: Ic45357d30da350759f56c9d061e60196acb3255b\n"
    },
    {
      "commit": "a8b7bb5a50d8ad197c6f32eb308919c11b52ce74",
      "tree": "b1cd7a64fdfece873de247a3514bbb376c128006",
      "parents": [
        "30f95a7d67870c28d2aaa88ee989c099f5670225"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Tue Jan 26 01:22:10 2016 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Jan 27 16:07:09 2016 -0800"
      },
      "message": "GPS Measurement and Navigation APIs go public\n\nThose APIs are already used by first-party Apps for a while. We now make them\navailable to third-party Apps as well.\n\nChange-Id: I87d9f0dbb04831fc849228d7df03a2686e2eb383\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": "923b2602583021b97ac7a8dcbca8395e309b938e",
      "tree": "2dbbb782370dbe0f6dbab5007831f634756b1053",
      "parents": [
        "ab253faa47de946b311522925c9875d2cccaaff5"
      ],
      "author": {
        "name": "David Christie",
        "email": "dnchrist@google.com",
        "time": "Tue Oct 27 16:55:58 2015 -0700"
      },
      "committer": {
        "name": "David Christie",
        "email": "dnchrist@google.com",
        "time": "Tue Oct 27 18:09:53 2015 -0700"
      },
      "message": "Make Location objects take less memory.\n\n-Use bitmask for has*** methods.\n-Use ThreadLocal for caching intermediate computations\n rather than preallocating memory in every Location\n\nChange-Id: If2fa17bfd59511ec0b809f4b7d7cd8028360c340\n"
    },
    {
      "commit": "5575ddfcc1a1a7873d493ad6bbc522a9652d4ffc",
      "tree": "c2525b832d2d808dde0ca4258fe4910ff90bb09a",
      "parents": [
        "780318180fa5ce496a45567a063a4ea90acfd10f"
      ],
      "author": {
        "name": "David Christie",
        "email": "dnchrist@google.com",
        "time": "Tue Oct 27 13:29:14 2015 -0700"
      },
      "committer": {
        "name": "David Christie",
        "email": "dnchrist@google.com",
        "time": "Tue Oct 27 14:13:03 2015 -0700"
      },
      "message": "Correct range checking for location strings during conversion\n\nMinute values in the range [0, 59] are valid if seconds are\npresent. If seconds are not present then minute values are\nvalid in the range [0, \u003c60]\n\nSecond values are valid in the range [0, \u003c60]\n\nExamples:\n50:59:59.99999 is valid\n50:59.99999 is valid\n50:59.1:1 is not valid\n\nPatch taken from Motorola: partner gerrit 137210\n\nBug: 17958582\nChange-Id: I0d1265534092157883af564119f723984362d436\nIssues: 2667 and 2668\n"
    },
    {
      "commit": "b870dbf86bd47c750d2a5350a83ec245396578ee",
      "tree": "043536606f0330901052341bbe4fadcfbc5b2599",
      "parents": [
        "648abe156596a5f76e6bd883c4d25d0380bbd469"
      ],
      "author": {
        "name": "David Christie",
        "email": "dnchrist@google.com",
        "time": "Mon Jun 22 12:42:53 2015 -0700"
      },
      "committer": {
        "name": "David Christie",
        "email": "dnchrist@google.com",
        "time": "Mon Jun 22 12:42:53 2015 -0700"
      },
      "message": "Fix privacy leaks in LocationManager\n\n-Register for listener for permission changes and stop\n request immediately if client loses permission.\n-Also remove permission requirement to remove geofences\n and clean up permission annotations.\n\nBug: 21903866\nChange-Id: I7e028b6b2ca5b21f25fcbba5de86dfb55caff872\n"
    },
    {
      "commit": "b71218aec133981126b0f916fc1f731fdbb04b1b",
      "tree": "fd5bb69dffe475ed277c992f38202561d68bab84",
      "parents": [
        "f858f7034c911c1a4dc45daa6e80ee0f9925e008"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Wed Jun 17 14:44:39 2015 -0400"
      },
      "committer": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Wed Jun 17 15:16:51 2015 -0400"
      },
      "message": "Add way to get the network location provider package\n\nBug: 21805447\nChange-Id: Ie9fd35a69d8808ae4346927b30b77e9fd733b569\n"
    },
    {
      "commit": "1ce4b6d3c6cb5b2eb9c9d00472be12245db92427",
      "tree": "d8c7d63276de0a8609ff5bb2422a2e55bad1562a",
      "parents": [
        "08f247fe2e073a5ec62dc0469d83f514aab31c42"
      ],
      "author": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Thu Jun 11 10:19:43 2015 -0400"
      },
      "committer": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Fri Jun 12 10:16:04 2015 -0400"
      },
      "message": "remove usage of deprecated method setLatestEventInfo\n\nBug: 18510449\nChange-Id: I56a77991c729990e501f402e007dfa79ee57621e\n"
    },
    {
      "commit": "a4db6473f7890326330f951ec11bae9adb661221",
      "tree": "770e4c48480dcf34d902c096ad378b8d07b787bf",
      "parents": [
        "c0a9cd440db7a2881baf5f970eb78aabc11614e3"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu May 21 16:26:33 2015 -0700"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu May 21 16:29:40 2015 -0700"
      },
      "message": "CountryDetector no longer requires location permissions.\n\nCountry information is already available elsewhere (MNC/MCC), so there\u0027s no\npoint enforcing these permissions.\n\nIt wasn\u0027t properly enforcing the permissions anyway, since the code path in\nquestion was sometimes executed on a handler thread.\n\nBug 20927020\n\nChange-Id: Ia090664917f7b694e80dd55934db442633bab1d8\n"
    },
    {
      "commit": "f7e9cf4fb48ea80cbc5088204ac3f898109623f7",
      "tree": "ef7eca0fc42142de07c0304c150b5afca2045617",
      "parents": [
        "90c66e3ded4a91613b0c1760ab2ef15e0d118a36"
      ],
      "author": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed May 13 10:40:31 2015 -0700"
      },
      "committer": {
        "name": "Svetoslav",
        "email": "svetoslavganov@google.com",
        "time": "Wed May 13 15:37:21 2015 -0700"
      },
      "message": "Access mock location is no longer a runtime permission - framework\n\nThe access mock location is no longer a runtime permission. It is a\nsignature protected one that apps cannot get but the fact they request\nit means they want to inject location into the system. Now the user\ngets to choose the current mock location app in developer options from\nthe apps that request the mock location permission. The access to mock\nlocation is no longer guarded by the permisson but from a new app op\nwhich is off by default and the settiings UI sets it to enabled only\nfor the currently selected mock location app.\n\nbug:21078873\n\nChange-Id: I19e3f9dc7c7de82eab46b30fec1abfbca54a0e59\n"
    },
    {
      "commit": "cbba357159fdd2db94052addb14d989df39ccd97",
      "tree": "6422eb909935e6637059a9e8a28b924e0942d48e",
      "parents": [
        "402bcf77d2870837d271b6b1cceb0942be152a6d",
        "2c160c1a64a696dcb6261311ca0a406a07231d33"
      ],
      "author": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Wed Apr 29 18:34:18 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 29 18:34:18 2015 +0000"
      },
      "message": "am 2c160c1a: am bdf9ffdd: am c0667853: Merge \"Add SystemApis in GpsMeasurements APIs to reflect changes in GPS HAL. b/19938206\" into mnc-dev\n\n* commit \u00272c160c1a64a696dcb6261311ca0a406a07231d33\u0027:\n  Add SystemApis in GpsMeasurements APIs to reflect changes in GPS HAL. b/19938206\n"
    },
    {
      "commit": "d593bf272d1e8bbbb1326fff74910f8f4774d921",
      "tree": "9b4fd9e1bb2f5392f0c19f669ce1dfc021c8b270",
      "parents": [
        "6ab47fc111a8c5eb814b9bbea7ebd0ae429fa709"
      ],
      "author": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Wed Apr 15 16:14:57 2015 -0700"
      },
      "committer": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Tue Apr 28 12:49:20 2015 -0700"
      },
      "message": "Add SystemApis in GpsMeasurements APIs to reflect changes in GPS HAL.\nb/19938206\n\nChange-Id: I91fd65b29e091b600ee4982a16321308e4d55aef\n"
    },
    {
      "commit": "c347ec6763f621165e1cb3da235d540967a7922a",
      "tree": "fcb6f0e782e8fdfabac16bfb4634cad3a994162d",
      "parents": [
        "63fc1514755601772e0fab029f4aa8003f54ddec"
      ],
      "author": {
        "name": "Tor Norbye",
        "email": "tnorbye@google.com",
        "time": "Wed Apr 08 12:59:37 2015 -0700"
      },
      "committer": {
        "name": "Tor Norbye",
        "email": "tnorbye@google.com",
        "time": "Thu Apr 23 16:45:04 2015 -0700"
      },
      "message": "Add permission annotations on the LocationManager API\n\nChange-Id: I244e8da8a91bba05e5437b9b386caf4e5cf7b125\n"
    },
    {
      "commit": "5e72118f193258259912c0a51688bd4434c8896e",
      "tree": "bda19ff953f9fb2b1c349890ce8a1b53fcb04550",
      "parents": [
        "2eabe5b7a9c396b1d6baebca7505a4e921312fc2"
      ],
      "author": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Tue Apr 14 11:38:08 2015 -0700"
      },
      "committer": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Wed Apr 15 12:57:17 2015 -0700"
      },
      "message": "Update GpsMeasurements APIs to reflect changes in GPS HAL.\nb/19938206\n\nAll new introduced APIs are hidden.\n\nGpsMeasurement#isPseudorangeRateCorrected() is need to properly identify different types\nof data provided by different partners. Given the nature of each GPS engine, this change is\nrequired to accomodate the data that can be provided by many partners.\nGpsNavigationMessage#getStatus() is required to ensure that the Location process is aware\nif the state of the messages, and can act depending on it.\n\nChange-Id: Ie34b1e69bf26a1bde86931ce61168421429bf8f8\n"
    },
    {
      "commit": "295a93b99f1773638553a0d00898824dc7ba79e5",
      "tree": "7828e35f42940e01e45355ba9cbd685caa67a588",
      "parents": [
        "1c146c78af00f30f6fa71c4577a66f27a5981aa2"
      ],
      "author": {
        "name": "David Christie",
        "email": "dnchrist@google.com",
        "time": "Wed Apr 08 15:31:30 2015 -0700"
      },
      "committer": {
        "name": "David Christie",
        "email": "dnchrist@google.com",
        "time": "Wed Apr 08 17:33:38 2015 -0700"
      },
      "message": "Add smallest displacement field to FLP HAL\n\nChange-Id: I4d857256c035c65185be3be8401bec8d45091aaf\n"
    },
    {
      "commit": "4a357cd2e55293402d7172766f7f9419815fc1e8",
      "tree": "f2cedee7f41f48a8141a2798ca6100912553e4ef",
      "parents": [
        "f2560e62cf26cae64f5751b0479743e09cb7bd7f"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Mar 18 18:37:18 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Mar 18 18:37:18 2015 -0700"
      },
      "message": "Replace usages of deprecated Resources.getColor() and getColorStateList()\n\nChange-Id: I8f64fe6c4c44a92ff6d07250223ba590a1d691b0\n"
    },
    {
      "commit": "08c7116ab9cd04ad6dd3c04aa1017237e7f409ac",
      "tree": "6ddb0659a3ecd024e0165ba050940bc40ea257fe",
      "parents": [
        "3062e57072145ba5e71ba8b2cf565d3453db04a7"
      ],
      "author": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Sat Feb 28 13:12:17 2015 -0500"
      },
      "committer": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Sat Feb 28 14:47:49 2015 -0500"
      },
      "message": "Remove unused imports in frameworks/base.\n\nChange-Id: I031443de83f93eb57a98863001826671b18f3b17\n"
    },
    {
      "commit": "c91ac688295e3d64ad1dd7539a713f5de60fea05",
      "tree": "fe3c54f40fd2b8798b7303a6659b86f718375af9",
      "parents": [
        "5b179afb19a00e03f1bed0f7eb6af9b0462f2f02"
      ],
      "author": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Mon Feb 09 14:24:39 2015 -0800"
      },
      "committer": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Wed Feb 11 13:16:28 2015 -0800"
      },
      "message": "Update handling of enum/flag fields in GPS data structures.\n\nIt fixes cases when flags where filtered in the platform, because they were\nchecked as enums.\nIt also simplies handling of future values in enums/flags.\n\nChange-Id: I83a0f82cc4562749081bf7e279ea52e2d5ba1f7c\n"
    },
    {
      "commit": "6bde4683ae1f70f7b5e53f853b6a7479bcebd5d5",
      "tree": "3804ff0a8b55fff0a506d7f5b2328c0e355d68ba",
      "parents": [
        "ad575295918dba197dcf61bfb81d56348ed1f073"
      ],
      "author": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Fri Jan 30 16:11:20 2015 -0800"
      },
      "committer": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Tue Feb 03 13:17:14 2015 -0800"
      },
      "message": "Reduce memory usage of GpsStatus objects.\n\nA simple GpsStatus object uses 9K of space, given that it initializes an array\nof 255 GpsSatellite objects.\nThis change reduces the memory footprint in the average case, and keeps the\nsemantics of the API and its GpsSatellite sibling objects without any changes.\nIn a best case scenario it brings the memory usage per object to 1K.\nIt\u0027s likely in most cases that only 20-50 satellites will be in view. So the\nusage should not exceeed half of the original memory usage.\nIt was considered to keep the internal array but a SparseArray provided bigger\nmemory savings in the test scenario of ~700B.\n\nChange-Id: Ie2d2144d776a74d4904a08c0d6c5aec6d3bba7cc\n"
    },
    {
      "commit": "4b1b8e4c44daf97e48f0fb21a74486072a505815",
      "tree": "f7c183310beb5f4b82d20283243f61bc43e2c269",
      "parents": [
        "462c9f50c3e52fb62287830056d5b1346120a233"
      ],
      "author": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Mon Feb 02 11:42:20 2015 -0800"
      },
      "committer": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Mon Feb 02 11:42:20 2015 -0800"
      },
      "message": "Revert API breaking change in  System API.\n\nChange introduced in ag/616521\n\nChange-Id: Ia95982b051496e123b4a179746aea15c6a0b8a65\n"
    },
    {
      "commit": "22287fe7c20f0382ce3e5ae5b480a3f18b625094",
      "tree": "daa7137b87d92174ab49e45458e44c5665c1e554",
      "parents": [
        "e300553a01160c093c44c1f428117360714e513f",
        "13a60b0d41c740448ea39ca19842c7b193c61efd"
      ],
      "author": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Mon Feb 02 18:07:40 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 02 18:07:41 2015 +0000"
      },
      "message": "Merge \"Fix race condition generating READY and NOT_SUPPORTED statuses.\""
    },
    {
      "commit": "71f0cd45eff088d26309564d6766003bb788a04b",
      "tree": "95d2454e86a4cac3d00b32b51db2622c1b03b689",
      "parents": [
        "14dc3c900febb05cca89ffe610ebf7fb970e552b"
      ],
      "author": {
        "name": "Soonil Nagarkar",
        "email": "sooniln@google.com",
        "time": "Fri Jan 30 11:29:42 2015 -0800"
      },
      "committer": {
        "name": "Soonil Nagarkar",
        "email": "sooniln@google.com",
        "time": "Fri Jan 30 11:29:42 2015 -0800"
      },
      "message": "Update Location.convert() javadocs to reflect their inconsistency with locales.\n\nThe Location.convert() methods do not invert each other as might be\nexpected. Changing this would introduce breaking changes, so I\u0027ve\nupdated the javadocs to make this clearer.\n\nBug: 13280976\nChange-Id: If4bd3c83d5fb67915450849ca471aabc27544dac\n"
    },
    {
      "commit": "13a60b0d41c740448ea39ca19842c7b193c61efd",
      "tree": "2ea5b94cf67b90031101e5a4d8963aa9334719c3",
      "parents": [
        "34efbcedac4157b1e92fcd8fd746ba2754b44858"
      ],
      "author": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Thu Jan 15 18:36:01 2015 -0800"
      },
      "committer": {
        "name": "destradaa",
        "email": "destradaa@google.com",
        "time": "Fri Jan 23 10:26:17 2015 -0800"
      },
      "message": "Fix race condition generating READY and NOT_SUPPORTED statuses.\n\nThe race condition only affects when the client registers for several (all) location listeners.\nAnd the side efects are benign: only the measurement and navigation message status are incurrectly\nbeing sent to the application, but there are no crashes or any real data from GPS being\nmisscommunicated.\nAlso:\n- cache the last reported status to filter sending notifications when no changes have occurred\n- do some cleanup and refactoring in the code changed\n\nChange-Id: I0692e6b70847dc1ee092d7a05a2c6ba3cd9fa147\n"
    },
    {
      "commit": "4d72e3e07e23fb13d4ba7f97f4c088948fef3e64",
      "tree": "16197eccecd18b7cddd891d47d52cdd4f347bdee",
      "parents": [
        "9ff2160eddf4dfbd118eb9b0656e7803603f215a",
        "a4c40c373477983622622186946d21802400876e"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Dec 30 12:29:38 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 30 12:29:38 2014 +0000"
      },
      "message": "am a4c40c37: am 72d33849: Merge \"Missing break in switch statement\"\n\n* commit \u0027a4c40c373477983622622186946d21802400876e\u0027:\n  Missing break in switch statement\n"
    },
    {
      "commit": "72d33849fea5de45087bfa79e645fa282ce8fcef",
      "tree": "a48b090ae102291ff16f0158a662472418a11194",
      "parents": [
        "5106dd44f9e5877aee8e70711c026e9e23783d4c",
        "d79b4963e2680078f963fe7afabc28636e7a25c2"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Dec 30 09:43:00 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 30 09:43:03 2014 +0000"
      },
      "message": "Merge \"Missing break in switch statement\""
    }
  ],
  "next": "ffa2b14d6f22d7ba2c6ca0ca392aa927009ac54b"
}
