)]}'
{
  "log": [
    {
      "commit": "3e112d56a4ed55ddfaa5226f8e4bc4e90244c093",
      "tree": "c29eec27616098c92fe83d5bca52bb8d11258bd6",
      "parents": [
        "bee0cbe5df04d56d0e66ae2deb28b650fb0b26fe",
        "33e0de46b6b006137bd8f30d7eee8be77432dd5d"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Mar 12 00:17:37 2019 -0700"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Mar 12 00:17:37 2019 -0700"
      },
      "message": "DO NOT MERGE - Merge PPRL.190305.001 into master\n\nBug: 127812889\nChange-Id: I7c5ada5c5afe38848be733616cbb1568440ab1c5\n"
    },
    {
      "commit": "10c573ff852309894b383ae9aa13dca0d64f8d3e",
      "tree": "798f28cc26d275de6185eda04498da6196db2b89",
      "parents": [
        "5d256870aa8def5661482e61b8aa29a7be6af238",
        "8c2fb5b99b13bb8b651aa3edf88030c9249a93d4"
      ],
      "author": {
        "name": "Andrei-Valentin Onea",
        "email": "andreionea@google.com",
        "time": "Thu Mar 07 17:26:15 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 07 17:26:15 2019 +0000"
      },
      "message": "Merge \"Add @UnsupportedAppUsage annotations\""
    },
    {
      "commit": "8c2fb5b99b13bb8b651aa3edf88030c9249a93d4",
      "tree": "2c7b95b2254bca5537c5e434efb248f091c8f209",
      "parents": [
        "3275a6b2450745486cacf2fc7ed8d4075556e606"
      ],
      "author": {
        "name": "Andrei Onea",
        "email": "andreionea@google.com",
        "time": "Wed Mar 06 15:33:03 2019 +0000"
      },
      "committer": {
        "name": "Andrei Onea",
        "email": "andreionea@google.com",
        "time": "Wed Mar 06 15:39:19 2019 +0000"
      },
      "message": "Add @UnsupportedAppUsage annotations\n\nFor packages:\n  android.database\n  android.hardware.display\n  android.hardware.input\n  android.hardware.location\n  android.location\n  android.media\n  android.media.projection\n  android.media.tv\n\nThis is an automatically generated CL. See go/UnsupportedAppUsage\nfor more details.\n\nExempted-From-Owner-Approval: Mechanical changes to the codebase\nwhich have been approved by Android API council and announced on\nandroid-eng@\n\nBug: 110868826\nTest: m\nMerged-In: I570c08292f8a9f512c96f9dce13f5337718f112c\nChange-Id: I1d6c60fcb53f404d5775163bf6929395921f5a45\n"
    },
    {
      "commit": "cf1a82953bb19bde249efc334156ba372707281c",
      "tree": "c080b6a2bc9c58c7f21bb850a2ae52b6d3565e7f",
      "parents": [
        "c76c5529bf24d489f7f312de7d25fa0d6aa4f4e8"
      ],
      "author": {
        "name": "Andrei Onea",
        "email": "andreionea@google.com",
        "time": "Thu Feb 28 16:46:34 2019 +0000"
      },
      "committer": {
        "name": "Andrei Onea",
        "email": "andreionea@google.com",
        "time": "Thu Feb 28 17:01:29 2019 +0000"
      },
      "message": "Add @UnsupportedAppUsage annotations\n\nFor packages:\n  com.android.internal.app\n  com.android.internal.appwidget\n  com.android.internal.location\n  com.android.internal.os\n  com.android.internal.policy\n  com.android.internal.statusbar\n  com.android.internal.telecom\n  com.android.internal.telephony\n  com.android.internal.widget\n\nThis is an automatically generated CL. See go/UnsupportedAppUsage\nfor more details.\n\nExempted-From-Owner-Approval: Mechanical changes to the codebase\nwhich have been approved by Android API council and announced on\nandroid-eng@\n\nBug: 110868826\nTest: m\nMerged-In: I6eba34467b2492047e5264684312adfa029eb317\nChange-Id: I413c4b6dd12bcf40b69423718ed278cbefe82087\n"
    },
    {
      "commit": "0e71b4f19ba602c8c646744e690ab01c69808b42",
      "tree": "efc2d543fbec688c9a03de674fc2ee2d10da3474",
      "parents": [
        "5854e9312c43a7e47f4a44bcc344984242452c73",
        "04898ff564fbda6d58693631ea633611585f8921"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Wed Feb 13 22:36:25 2019 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Thu Feb 14 09:48:06 2019 -0800"
      },
      "message": "DO NOT MERGE - Merge pi-platform-release (PPRL.190205.001) into\nstage-aosp-master\n\nBug: 124234733\nChange-Id: Ic4f67fde0835da0b1c363906cccef0d244e38393\n"
    },
    {
      "commit": "8752dedb760cd270e2ecc8f9cd3bb4f00f55e23f",
      "tree": "76efbd9785ea1853a9b288b5738a988d0da7935f",
      "parents": [
        "bc6e433ae488b4ad807c1503a53155a3259fd0b8"
      ],
      "author": {
        "name": "Tor Norbye",
        "email": "tnorbye@google.com",
        "time": "Wed Dec 26 19:55:07 2018 -0800"
      },
      "committer": {
        "name": "Tor Norbye",
        "email": "tnorbye@google.com",
        "time": "Sat Jan 19 07:22:55 2019 -0800"
      },
      "message": "Update signature files to the new format\n\nThe new format is described in tools/metalava/FORMAT.md.\n\nFixes: 116589402 Switch signature files over to the v2 format\nFixes: 112626813 Drop \"synchronized\" modifier from the signature format\nFixes: 122358225 Omit overriding methods that only differ in final [...]\nFixes: 73088715 API Review: Need doclava to output nullability\nFixes: 79739773 API Review: Metalava enforcing constants are constant\nExempt-From-Owner-Approval: Large-scale tooling change\nTest: make sdk, make update-api, make checkapi\nChange-Id: I8314f4e7099fa92e4f8ed7d283ccf836cc9a84a0\nMerged-In: Ia248aece5250e84e47c815c601133b698bf644c2\n"
    },
    {
      "commit": "e385b32862e7022453415dd543d871908d2eafa1",
      "tree": "3fdd54966505fe42b7b93203a531c49457ab8a3a",
      "parents": [
        "c0b85f9e76f07e1feae83ff08e2a0bea85a64a29"
      ],
      "author": {
        "name": "WyattRiley",
        "email": "wyattriley@google.com",
        "time": "Thu Dec 06 11:43:58 2018 -0800"
      },
      "committer": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Wed Jan 16 18:56:10 2019 +0000"
      },
      "message": "Adding SUPL NI Emergency Extension Time\n\nConfigurable by carrier config.xml resource\n\nBug: 118839234\nBug: 115361555\nBug: 112159033\nTest: On device, see b/115361555#comment14\nChange-Id: I52e61656cca8b6fa6468d32d2e69bf60f4c83c61\n(cherry picked from commit a725dd6650846090f70ed9811f1a94f036ab3f29)\n"
    },
    {
      "commit": "3e6812ad4984a3a6ca3d18ee2aea3f69d25e4e5d",
      "tree": "b9a588e877f0fce3c30ef69799504f7bccd4ebcf",
      "parents": [
        "2e1d80d4e7014adbdb7c2b562599c95cf2e21a55"
      ],
      "author": {
        "name": "Sundong Ahn",
        "email": "sundongahn@google.com",
        "time": "Wed Jan 09 16:12:24 2019 +0900"
      },
      "committer": {
        "name": "Sundong Ahn",
        "email": "sundongahn@google.com",
        "time": "Wed Jan 09 16:12:24 2019 +0900"
      },
      "message": "Switch to metalava\n\nandroid.test.mock, com.android.location.provider and\ncom.android.mediadrm.signer libraries are change to using metalava\ninstead of doclava.\n\nTest: m -j\nBug: 117127012\nChange-Id: I82e838ab60110698e1c0ea8e567467a1b32707ce\n"
    },
    {
      "commit": "55418eada51d4f5e6532ae9517af66c50ea495c4",
      "tree": "b93b0483b4ba377e1b4b79d344932fdf78d17de5",
      "parents": [
        "cfc6518c48d1648bb33a0f6633132a726a9bc7f9"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Thu Dec 20 15:30:45 2018 +0000"
      },
      "committer": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Fri Dec 28 14:26:35 2018 +0000"
      },
      "message": "Limit access to suspected false positives.\n\nMembers modified herein are suspected to be false positives: i.e. things\nthat were added to the greylist in P, but subsequent data analysis\nsuggests that they are not, in fact, used after all.\n\nAdd a maxTargetSdk\u003dP to these APIs. This is lower-risk that simply\nremoving these things from the greylist, as none of out data sources are\nperfect nor complete.\n\nFor APIs that are not supported yet by annotations, move them to\nhiddenapi-greylist-max-p.txt instead which has the same effect.\n\nExempted-From-Owner-Approval: Automatic changes to the codebase\naffecting only @UnsupportedAppUsage annotations, themselves added\nwithout requiring owners approval earlier.\n\nBug: 115609023\nTest: m\nChange-Id: Ia937d8c41512e7f1b6e7f67b9104c1878b5cc3a0\nMerged-In: I020a9c09672ebcae64c5357abc4993e07e744687\n"
    },
    {
      "commit": "15b123ef458ed927782b080921e987c995fc56dd",
      "tree": "008426beb4c3b8d4ecb62112efa17be09fe6d427",
      "parents": [
        "58ee538e62b15dd07274beecf5f925543c5332b1",
        "7409b8620ff39ff0788ef1543297f0cb1d49a0e0"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Dec 11 14:13:44 2018 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Dec 11 14:13:44 2018 -0800"
      },
      "message": "DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master\n\nBug: 120502534\nChange-Id: Idc8bfb6d97a869b76cfb87ca1a494201baf9e8bd\n"
    },
    {
      "commit": "45d2c252b19c08bbd20acaaa2f52ae8518150169",
      "tree": "d5c04325ae04d4a4d3ce46ac58a062f0eb536ad5",
      "parents": [
        "7fff7e5eff2640fac3729ff4f955f8e37cebf75f"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Fri Sep 14 12:35:36 2018 +0100"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Mon Oct 22 17:28:24 2018 -0700"
      },
      "message": "Move some members to the \"Q blacklist\".\n\nBased on some analysis, these fields/methods are likely false positives.\nSet maxTargetSdk\u003dP so that any apps using them are required to migrate off\nthem in future. See the bug for more details.\n\nExempted-From-Owner-Approval: Automatic changes to the codebase\naffecting only @UnsupportedAppUsage annotations, themselves added\nwithout requiring owners approval earlier.\n\nBug: 115609023\nTest: m\nMerged-In: I719b5c94e5b1f4fa562dd5d655953422958ad37e\nChange-Id: I719b5c94e5b1f4fa562dd5d655953422958ad37e\n(cherry picked from commit 8c854f86a477fbbee38092f449333e1425e5cd7e)\n"
    },
    {
      "commit": "ccf9672f6493add8274e800e814c0f85c9c04d3b",
      "tree": "df908d424f9b644f935c84161b1c54da8d66c81d",
      "parents": [
        "7b532b7370d2f19a08fc373ba0e95663d96cbfd6"
      ],
      "author": {
        "name": "Sundong Ahn",
        "email": "sundongahn@google.com",
        "time": "Mon Sep 17 15:23:14 2018 +0900"
      },
      "committer": {
        "name": "Sundong Ahn",
        "email": "sundongahn@google.com",
        "time": "Thu Oct 04 14:27:37 2018 +0900"
      },
      "message": "Add the metalava_enabled property\n\nThe new property is added for supporting metalava. But some sdk library\ncannot use metalava. So \"metalava_enabled: false\" is added to these\nmodules.\n\nTest: make -j\nTest: checkapi\nBug: 117127012\nMerged-In: Ib65f3cd73dac0ac6ed64afeca6546d99739e4424\nChange-Id: Ib65f3cd73dac0ac6ed64afeca6546d99739e4424\n(cherry picked from commit 558e702be0eb2de76bb45303c99322561d73216c)\n"
    },
    {
      "commit": "5ba798e9d1aaac72efdcf0731dc8f5d03d871722",
      "tree": "e857e43090c07174db725604fe241d7ad58685ac",
      "parents": [
        "0712cf3e18ff0a5d0c82a598e0c1ece06b9820f2"
      ],
      "author": {
        "name": "kopriva",
        "email": "kopriva@google.com",
        "time": "Sat Sep 29 12:32:37 2018 -0700"
      },
      "committer": {
        "name": "kopriva",
        "email": "kopriva@google.com",
        "time": "Mon Oct 01 14:38:57 2018 -0700"
      },
      "message": "docs: bug 37130805, typo\n\nI fixed an extra \u0027and\u0027 while I was at it.\n\nTest: make ds-docs\n\nBug: 37130805\n\nChange-Id: Ia1e9a991f824253feca628022414f2e1fbdcfea8\nExempt-From-Owner-Approval: Docs-only change\n"
    },
    {
      "commit": "f07a46058cee7a23e1dc0676ba9ff264a7adf11f",
      "tree": "168b2c1fb44c16108ba42415d118cc65faf9b338",
      "parents": [
        "562f5485d36ada3eddad31ed4ff079c4ab3a5c68"
      ],
      "author": {
        "name": "kopriva",
        "email": "kopriva@google.com",
        "time": "Thu Sep 20 11:20:27 2018 -0700"
      },
      "committer": {
        "name": "kopriva",
        "email": "kopriva@google.com",
        "time": "Thu Sep 20 11:20:27 2018 -0700"
      },
      "message": "docs: fixing several minor documentation bugs\n\nTest: make ds-docs\n\nBug: 36949243\nBug: 116169695\nBug: 37001248\nBug: 37044885\nBug: 37053166\n\nChange-Id: I844a8978518cd7214bf9d068d602902dfa7e8246\nExempt-From-Owner-Approval: Docs-only change\n"
    },
    {
      "commit": "c185f08c4a408fa7abc578851d31cdce6ad86f6f",
      "tree": "ee7c882c959de3a1298f477d20f612a23bdf5751",
      "parents": [
        "de2bfe1ddff3112362da388733531afe97caa53a"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Mon Aug 20 14:28:54 2018 +0100"
      },
      "committer": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Mon Aug 20 14:28:54 2018 +0100"
      },
      "message": "Add @UnsupportedAppUsage annotations\n\nFor packages:\n  com.android.internal\n  com.android.internal.annotations\n  com.android.internal.app\n  com.android.internal.app.procstats\n  com.android.internal.appwidget\n  com.android.internal.backup\n  com.android.internal.car\n  com.android.internal.content\n  com.android.internal.inputmethod\n  com.android.internal.location\n  com.android.internal.logging\n  com.android.internal.midi\n  com.android.internal.net\n  com.android.internal.os\n  com.android.internal.policy\n  com.android.internal.statusbar\n  com.android.internal.telecom\n  com.android.internal.telephony.euicc\n  com.android.internal.textservice\n  com.android.internal.util\n  com.android.internal.view\n  com.android.internal.view.animation\n  com.android.internal.view.menu\n  com.android.internal.widget\n\nThis is an automatically generated CL. See go/UnsupportedAppUsage\nfor more details.\n\nExempted-From-Owner-Approval: Mechanical changes to the codebase\nwhich have been approved by Android API council and announced on\nandroid-eng@\n\nBug: 110868826\nTest: m\nChange-Id: I1c2954c5a579f073017c1794fd2d200e0a471602\nMerged-In: Ib31b52e6957869e5744dadbb35cb4584ef17187f\n"
    },
    {
      "commit": "dcbed5fbe654d31b15c418e33e24370a7106d128",
      "tree": "88e686ac5263da06a6779f52919f5e8913363ce1",
      "parents": [
        "8cb78fcb1ef1f196b36f841bc5c04288f5b6299f"
      ],
      "author": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Mon Aug 13 10:25:53 2018 -0700"
      },
      "committer": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Mon Aug 13 15:57:02 2018 -0700"
      },
      "message": "Add HW Revision to GNSS Metrics\n\nTest:\nadb shell dumpsys location\nHardware Version: EVT2.0\n\nBUG:112541087\nChange-Id: I6278188f15f22ff7b4f5cc30c4c225e0f95ec53d\n"
    },
    {
      "commit": "8eb07d9011680e239828943fb46a00f69f76c0a7",
      "tree": "59a5d75d0a89188d04f266d4f7ab8d5450a618fd",
      "parents": [
        "4d98474f2ace042b612a36457dc24c63e74d9bff"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Thu Aug 09 16:52:22 2018 +0100"
      },
      "committer": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Thu Aug 09 16:52:22 2018 +0100"
      },
      "message": "Add @UnsupportedAppUsage annotations\n\nFor packages:\n  android.location\n\nThis is an automatically generated CL. See go/UnsupportedAppUsage\nfor more details.\n\nExempted-From-Owner-Approval: Mechanical changes to the codebase\nwhich have been approved by Android API council and announced on\nandroid-eng@\n\nBug: 110868826\nTest: m\nChange-Id: I74c0dba2a25f1a4c3991e19221a277efe9230f3b\nMerged-In: I2e49951f49072866906ecb8fba133ff16293e65a\n"
    },
    {
      "commit": "abdaa314f885b5a889e48676b7b2b0460a5332f7",
      "tree": "238c122a88137052a9546af53cadf29d42cd4105",
      "parents": [
        "7bb253d078892f758ce72c98ac64f08a639ed1ec",
        "aa5d8dfeb0e12466da355fc4111ab8a089afd140"
      ],
      "author": {
        "name": "Sundong Ahn",
        "email": "sundongahn@google.com",
        "time": "Thu Jun 14 21:59:40 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 14 21:59:40 2018 -0700"
      },
      "message": "Merge \"Build com.android.location.provider with java_sdk_library\"\nam: aa5d8dfeb0\n\nChange-Id: I53720ed4fcbe9f00f2f1f607d07efa9adaaf7bb4\n"
    },
    {
      "commit": "50cd1a972dde18207beb580155bb3a4e648ae66b",
      "tree": "d2e26c6c892ea1e1b4198bd5e2f3ae76aec835af",
      "parents": [
        "c55e1b6f4d8ee4a73c85ff953e6a79f50c881b02"
      ],
      "author": {
        "name": "Sundong Ahn",
        "email": "sundongahn@google.com",
        "time": "Mon May 21 17:39:23 2018 +0900"
      },
      "committer": {
        "name": "Sundong Ahn",
        "email": "sundongahn@google.com",
        "time": "Thu Jun 07 12:08:35 2018 +0000"
      },
      "message": "Build com.android.location.provider with java_sdk_library\n\ncom.android.location.provider is built with java_sdk_library and api\nfiles are added by running \"make update-api\".\nRemove com.android.location.provider.xml since it will be\nmake auto generation by soong when the library is built with\njava_sdk_library.\n\nBug:77577799\nTest: make -j\nTest: make checkapi\nTest: adb shell cmd package list libraries |\\\n      grep com.android.location.provider\n      And check the com.android.location.provider library\n\nChange-Id: Iad0b4452fd87716c277235f3da6f3540aafdbed3\n"
    },
    {
      "commit": "fa15a99fe910d0d20ab493e7ab4e39466fdd44ec",
      "tree": "34e421208ae17f58161ac998020b44a183046592",
      "parents": [
        "409e5d25a91cacdab6bd2a4c338d2ef1c84fa318"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Mar 08 16:43:07 2018 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri May 25 16:38:52 2018 +0900"
      },
      "message": "Remove FlpHardwareProvider\n\nAfter Treble\u0027s FLP merge into GNSS HAL, the FlpHardwareProvider is just\nan empty shell. Removing FusedLocation and/or Flp + Hardware classes\naltogether.\n\nBug: 35726697\nTest: m -j\nTest: Open Google Map and then walk around. The dot moves as I walk.\n\nMerged-In: I7f413e38b57424e8ebb9d7d14d94f145a48d10f8\nChange-Id: I7f413e38b57424e8ebb9d7d14d94f145a48d10f8\n(cherry picked from commit 4cc3a1c056f69ac4da1dc5055c36b7357e9f673c)\n"
    },
    {
      "commit": "409e5d25a91cacdab6bd2a4c338d2ef1c84fa318",
      "tree": "bda16fb534b191f92ec363f5053c0a1dc7411b6e",
      "parents": [
        "b19a838f473d5313b7ae02984d60745de391e745"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Feb 27 22:00:23 2018 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri May 25 16:30:22 2018 +0900"
      },
      "message": "Create the stubs lib for com.android.location.provider\n\ncom.android.location.provider.stubs is the stubs library for the shared\nlibrary com.android.location.provider. The stubs library is intended to\nprovide the stable set of APIs to the apps implementing location\nprovider.\n\nWithout the stubs library, apps had to directly link to the shared\nlibrary which is built without Android SDK and exposes private APIs that\nare not intended to be used by apps. This also has been causing the\nlin-type check warnings when the shared lib is used by apps built with\nSDK; apps built with SDK is not allowed to link to lib built without\nSDK. This has been reported as warnings but will soon be errors. Now\nsuch apps are required to link to the stubs lib, which is built with\nSDK.\n\nWhile building the stubs library, following APIs are made hidden because\nthey are exposing private APIs from the Android platform.\n\n1) Activity* classes are removed from the API, as they are not intended\nto be used by apps since O.\n2) GeocodeProvider and GeofenceProvider are removed from the API.\n3) LocationProvider.mLocationManager is removed as it is exposing the\nprivate symbol ILocationProvider\n4) ProviderPropertiesUnbundle.getProviderProperties are removed from the\nAPI as it is exposing the private symbol ProviderProperties.\n5) The constructor of ProviderRequestUnbundled is removed since the\nclass is intended to be instantiated by the service.\n\nBug: 71420593\nTest: m -j com.android.location.provider.stubs\n\nMerged-In: I20aba7e9ca9c3adc75db241f37a55f0d657f3ced\nChange-Id: I20aba7e9ca9c3adc75db241f37a55f0d657f3ced\n(cherry picked from commit eee99986c8021d6825f99a25434725fccf7b2b12)\n"
    },
    {
      "commit": "5b630af85724885d32b210e6032f1bfd79a4a568",
      "tree": "ceec3041d4b6b368d4f00be9cc4033d2a7c6f6d5",
      "parents": [
        "3ac00caddf2b540d6f7240c00dec85bf019f164e"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Fri May 11 11:21:05 2018 -0700"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Fri May 11 11:21:05 2018 -0700"
      },
      "message": "Simplify Javadoc for easier parsing.\n\nChange-Id: I48abfa8eb8ccfd031d2364ef9acfa39d4bec4cb4\nFixes: 76874150\nTest: Builds \u0026 comment-only\n"
    },
    {
      "commit": "d5a1bb621a05d414ed630643898f98081893f71b",
      "tree": "6560d77ef066ebffdea501c24d35ba86c440b0ae",
      "parents": [
        "4257db35fe7333a40329b8d107b8e30fd547d3d9",
        "e048bab28104d03dffb628277f07b2d83a8dbeb9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 24 04:01:56 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 24 04:01:56 2018 +0000"
      },
      "message": "Merge \"Update Java doc of GnssMeasurementEvent#STATUS_NOT_ALLOWED\" into pi-dev"
    },
    {
      "commit": "e048bab28104d03dffb628277f07b2d83a8dbeb9",
      "tree": "cbc629b1c1447f11f6fa608e7be6948dd2089c95",
      "parents": [
        "a43acdabd40d069e2534a6b7978b715f9602af1a"
      ],
      "author": {
        "name": "Yu-Han Yang",
        "email": "yuhany@google.com",
        "time": "Wed Apr 04 21:28:15 2018 -0700"
      },
      "committer": {
        "name": "Yu-Han Yang",
        "email": "yuhany@google.com",
        "time": "Tue Apr 10 15:35:06 2018 -0700"
      },
      "message": "Update Java doc of GnssMeasurementEvent#STATUS_NOT_ALLOWED\n\nBug: 74218424\nTest: N/A\nChange-Id: Icf7fae3b252ce44d3a82cdce06b4dd78026f6fb7\n"
    },
    {
      "commit": "0e675bd901716b9e979bb83d724efaeb5e42f3b8",
      "tree": "945135d5aadec7ebe2d1f439297423cc06c1e6e4",
      "parents": [
        "54d87890297df02bc4826f30837810d0b48a3035",
        "b0284fb5de8832331a049e44e2ba9f67931013f3"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 10 16:34:05 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 10 16:34:05 2018 +0000"
      },
      "message": "Merge \"Exempt tests for hidden APIs.\" into pi-dev"
    },
    {
      "commit": "f80809ffd7b6ea8eb120ce5ccb343582c2757ea0",
      "tree": "4d3f0aab41b4865f8f3a1c9fb9f0a787183da504",
      "parents": [
        "7f03f1a20c1b6190003b9b5baf0f14dfc25785b5"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Apr 04 11:20:44 2018 -0700"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Fri Apr 06 14:59:07 2018 -0700"
      },
      "message": "Expose TestAPIs needed by GtsOsTestCases\n\nTest: atest GtsOsTestCases on pi-dev:taimen and oc-mr1:sailfish\nBug: 77497338\nChange-Id: I5de976991a857bfbed2faa943822af542601fa8b\n"
    },
    {
      "commit": "b0284fb5de8832331a049e44e2ba9f67931013f3",
      "tree": "32a34a96c50e2aec4e1b411b9763d015d26c5bae",
      "parents": [
        "ddeaefb546c15f26bf7d4372a0d3e000463c7a5e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Apr 06 14:03:18 2018 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Apr 06 14:54:39 2018 +0100"
      },
      "message": "Exempt tests for hidden APIs.\n\nBug: 64382372\nBug: 74963051\nTest: m\nChange-Id: I5234dd6230f2bdd6ffccbf12b25a02d929d20161\n"
    },
    {
      "commit": "4f79a18cc5f3157c995fe258eb6b6ca782137939",
      "tree": "0661398596d53a5fd0d9d1568242ff7d113a8504",
      "parents": [
        "7f3e5bb0538e3bfa118ff7cf6324c50d694b83b8",
        "2a9409e91457c175be5ee36d3e676a70dc52bdca"
      ],
      "author": {
        "name": "Maggie Wang",
        "email": "yiranwang@google.com",
        "time": "Tue Apr 03 20:44:29 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 03 20:44:29 2018 +0000"
      },
      "message": "Merge \"Fix test location provider bug\" into pi-dev"
    },
    {
      "commit": "2a9409e91457c175be5ee36d3e676a70dc52bdca",
      "tree": "e679a30bfbd8ec74d646a4a83e505594a99f990a",
      "parents": [
        "642c0be3f35354df689e40010f106526411d2f15"
      ],
      "author": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Wed Mar 21 11:47:28 2018 -0700"
      },
      "committer": {
        "name": "Maggie Wang",
        "email": "yiranwang@google.com",
        "time": "Tue Apr 03 18:56:47 2018 +0000"
      },
      "message": "Fix test location provider bug\n\nLocationManager.isProviderEnabled should return true for a test provider if:\n1. A test provider is added through LocationManager.addTestProvider\n2. The test provider is enabled through LocationManager.setTestProviderEnabled\n\nThis fix changes the logic if LocationManager.isProviderEnabled and\nLocationManager.setProviderEnabledForUser to allow users get/set test\nlocation provider status.\n\nBug: 72647543\nBug: 77238940\nTest: Manual\nTest: run cts --module CtsLocationTestCases -t android.location.cts.LocationManagerTest\nChange-Id: Ib241e5b487fd873c1fa0d7ac34b82b8592fc0906\n"
    },
    {
      "commit": "b30c0b7477d9faf3697f6b33b9cba4f900d2bc06",
      "tree": "85f258e0be040f2e0743f6ab06f5325bdecd064d",
      "parents": [
        "5b4a0d6751273f365d6e04ebb8f52dc2acc826a8"
      ],
      "author": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Tue Mar 27 11:54:34 2018 -0700"
      },
      "committer": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Tue Mar 27 15:24:53 2018 -0700"
      },
      "message": "Add Battery time to location dumpsys\n\nBUG:73494617\n\nTest: Manual\nChange-Id: I162831387e65eff9856be8befe2b53b12ebf45f2\n"
    },
    {
      "commit": "a106a1a6b4dbcb087ff0833f11d23300fd9bcf78",
      "tree": "96e6cadfc6c0c1fb744177083d05e58a390ea589",
      "parents": [
        "6ae5d863dea363d4feb7e8e2439b0adf985ae88a",
        "4cbcb411b1198f14fbd41a231cc7fb738c958f1b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 23 13:41:46 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 13:41:46 2018 +0000"
      },
      "message": "Merge \"Deprecating unused fields from GnssMeasurement\" into pi-dev"
    },
    {
      "commit": "aa8cbab151f4df89e3e2c7f3df36b005e01d8558",
      "tree": "9bc56fb3aad740d22a3f25ea6fa6920736902daf",
      "parents": [
        "dddd69ef3eb72edacc4961dc6a6f1ab0cddcf416",
        "49097c0b99c0fda9f5343406d28027a726bb94ee"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Thu Mar 22 16:10:08 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 22 16:10:08 2018 +0000"
      },
      "message": "Merge \"GNSS Model Name constant string and comment updates\" into pi-dev"
    },
    {
      "commit": "4d6dc48d242a643acd846b4892803c8295740b64",
      "tree": "508442bdba6f301debc9c4f5e745814bdca85ed9",
      "parents": [
        "86259365d466332f072f29b8be5ccb5bca863a92",
        "4cc3a1c056f69ac4da1dc5055c36b7357e9f673c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 22 00:29:38 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 22 00:29:38 2018 +0000"
      },
      "message": "Merge changes I7f413e38,I20aba7e9 into pi-dev\n\n* changes:\n  Remove FlpHardwareProvider\n  Create the stubs lib for com.android.location.provider\n"
    },
    {
      "commit": "b2637dac492e916c0a91982a7f2a48d84d9f7fae",
      "tree": "961aeca1fb5bfdea8d863319b56ea273f64941ea",
      "parents": [
        "b09f2b5926ace1ab1abb1a0dd0eb4ed70953d199",
        "83e03f55597a69bf1e1f2df2cd24e83e84d21914"
      ],
      "author": {
        "name": "Maggie Wang",
        "email": "yiranwang@google.com",
        "time": "Wed Mar 21 22:02:03 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 22:02:03 2018 +0000"
      },
      "message": "Merge \"Fix location settings bug on non-GPS devices\" into pi-dev"
    },
    {
      "commit": "83e03f55597a69bf1e1f2df2cd24e83e84d21914",
      "tree": "cdf93674b539ecae33ddfea132c80e9abf9b490b",
      "parents": [
        "211078e1c30ce337a96ec77508bde73b3b3ffbdf"
      ],
      "author": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Fri Mar 16 12:22:20 2018 -0700"
      },
      "committer": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Wed Mar 21 12:14:47 2018 -0700"
      },
      "message": "Fix location settings bug on non-GPS devices\n\nThe old location_mode API hardcoded gps and network location provider when it enables/disables location, without checking whether the providers exist on device.\nIt causes bugs when used together with the new\nLocationManager.setLocationEnabled() APIs.\n\nThis fix modified LocationManager.setLocationEnabled() API when user\ntries to disable location on device. Besides turning off the providers\nfrom LocationManager.getAllProviders(), it also turns off GPS and\nnetwork provider explicitly.\n\nTo reduce times of binding to the service and chance of race condition, we also\nmodified SettingsProvider.updateLocationProvidersAllowedLocked() to\naccept a string param with multiple location providers to be\nenabled or disalbed at the same time.\n\nBug: 73261572\nTest: Manual on chromebook\nChange-Id: I2e59e0d4cf395b98cd481af5d7f3c762274d7826\n"
    },
    {
      "commit": "4cc3a1c056f69ac4da1dc5055c36b7357e9f673c",
      "tree": "106fdc43e6561b8a14543eb34ef4fd94932993b2",
      "parents": [
        "eee99986c8021d6825f99a25434725fccf7b2b12"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Mar 08 16:43:07 2018 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Mar 21 10:36:44 2018 +0900"
      },
      "message": "Remove FlpHardwareProvider\n\nAfter Treble\u0027s FLP merge into GNSS HAL, the FlpHardwareProvider is just\nan empty shell. Removing FusedLocation and/or Flp + Hardware classes\naltogether.\n\nBug: 35726697\nTest: m -j\nTest: Open Google Map and then walk around. The dot moves as I walk.\nChange-Id: I7f413e38b57424e8ebb9d7d14d94f145a48d10f8\n"
    },
    {
      "commit": "b640517a2e84c53753ff62b5715a7e3efdf42690",
      "tree": "78f646c242fe6ebaf411d1eeefcac6e1efb2b7e0",
      "parents": [
        "3912a7f54466f258c5b2597eebdb54cfe0f8281c"
      ],
      "author": {
        "name": "Yu-Han Yang",
        "email": "yuhany@google.com",
        "time": "Tue Mar 20 15:43:56 2018 -0700"
      },
      "committer": {
        "name": "Yu-Han Yang",
        "email": "yuhany@google.com",
        "time": "Tue Mar 20 17:04:59 2018 -0700"
      },
      "message": "Fix docs for LocationRequest#setLowPowerMode()\n\nBug: 74218111\nChange-Id: Ib77a58c21e2cc3601221c8b5cc13eb416dccfbc9\nFixes: 74218111\nTest: N/A\n"
    },
    {
      "commit": "eee99986c8021d6825f99a25434725fccf7b2b12",
      "tree": "79da47d3610df6db9f59dc35a624db4a2c86a254",
      "parents": [
        "790befca1deb009e578a05e42504d95e9f1a03b0"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Feb 27 22:00:23 2018 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Mon Mar 19 19:27:09 2018 +0900"
      },
      "message": "Create the stubs lib for com.android.location.provider\n\ncom.android.location.provider.stubs is the stubs library for the shared\nlibrary com.android.location.provider. The stubs library is intended to\nprovide the stable set of APIs to the apps implementing location\nprovider.\n\nWithout the stubs library, apps had to directly link to the shared\nlibrary which is built without Android SDK and exposes private APIs that\nare not intended to be used by apps. This also has been causing the\nlin-type check warnings when the shared lib is used by apps built with\nSDK; apps built with SDK is not allowed to link to lib built without\nSDK. This has been reported as warnings but will soon be errors. Now\nsuch apps are required to link to the stubs lib, which is built with\nSDK.\n\nWhile building the stubs library, following APIs are made hidden because\nthey are exposing private APIs from the Android platform.\n\n1) Activity* classes are removed from the API, as they are not intended\nto be used by apps since O.\n2) GeocodeProvider and GeofenceProvider are removed from the API.\n3) LocationProvider.mLocationManager is removed as it is exposing the\nprivate symbol ILocationProvider\n4) ProviderPropertiesUnbundle.getProviderProperties are removed from the\nAPI as it is exposing the private symbol ProviderProperties.\n5) The constructor of ProviderRequestUnbundled is removed since the\nclass is intended to be instantiated by the service.\n\nBug: 71420593\nTest: m -j com.android.location.provider.stubs\n\nChange-Id: I20aba7e9ca9c3adc75db241f37a55f0d657f3ced\n"
    },
    {
      "commit": "4cbcb411b1198f14fbd41a231cc7fb738c958f1b",
      "tree": "702548c71c2c2d8e4383b4a397cab27da3395862",
      "parents": [
        "8c55e8c306ceb26c9c177b745ea855ac3e4c1372"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Tue Jan 23 18:07:05 2018 -0800"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Fri Mar 16 13:12:14 2018 -0700"
      },
      "message": "Deprecating unused fields from GnssMeasurement\n\nDeprecating CarrierPhase, that are redundant\nwith AccumualtedDeltaRange fields (that remain in place)\nAdding additional enum per partner feedback\n\nBug: 71908529\nBug: 72405353\nTest: GnssLogger on device GnssMeasurement screen \u0026 file\n\nChange-Id: I524e47aa9420d83d87b22334378e0c9a800cf179\n"
    },
    {
      "commit": "49097c0b99c0fda9f5343406d28027a726bb94ee",
      "tree": "be199779c2e3a5e701ef9adf978a4abad2a6f348",
      "parents": [
        "8c55e8c306ceb26c9c177b745ea855ac3e4c1372"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Thu Mar 15 09:14:43 2018 -0700"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Thu Mar 15 10:52:12 2018 -0700"
      },
      "message": "GNSS Model Name constant string and comment updates\n\nAddressing API review feedback\nRemoved string, returning Null instead\nUpdated comments\n\nBug: 73951626\nTest: Runs on device w/GnssLogger\nChange-Id: I54d05a7ae000e9ff52ec1f6646f83aed7de81b94\n"
    },
    {
      "commit": "2e17d3f4f8e8775b69cd0495ba4100e8d5e57fee",
      "tree": "212450d9b7afbecfb30a57d88965a63c8d2693e5",
      "parents": [
        "5130fdb0ace94f09c712ef7355567cedccaeb8a8"
      ],
      "author": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Fri Mar 02 11:46:59 2018 -0800"
      },
      "committer": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Fri Mar 02 11:46:59 2018 -0800"
      },
      "message": "Remove javadoc for return value\n\nLocationManager#setLocationEnabledForUser has documentation for return value even though it\u0027s void. Fix the bug by removing the return javadoc.\n\nBug: 73751024\nTest: Manual\nChange-Id: I785e9f08674f472fe0f248972d5cc6055e64412a\n"
    },
    {
      "commit": "a3e79fbb8cdc9ef78e519f2d89e2f70e41864a1d",
      "tree": "e2bac4b9794e76f3923b096f5efb99d631a19c6a",
      "parents": [
        "e8b557bc08facb3d60b605f3e8cb26b31baaa28b"
      ],
      "author": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Fri Feb 23 12:57:51 2018 +0000"
      },
      "committer": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Wed Feb 28 17:15:21 2018 +0000"
      },
      "message": "frameworks/base: Set LOCAL_SDK_VERSION where possible.\n\nThis change sets LOCAL_SDK_VERSION for all packages where\nthis is possible without breaking the build, and\nLOCAL_PRIVATE_PLATFORM_APIS :\u003d true otherwise.\n\nSetting one of these two will be made required soon, and this\nis a change in preparation for that. Not setting LOCAL_SDK_VERSION\nmakes the app implicitly depend on the bootclasspath, which is\noften not required. This change effectively makes depending on\nprivate apis opt-in rather than opt-out.\n\nTest: make relevant packages\nBug: 73535841\nChange-Id: Ibcffec873a693d1c792ca210fb597d2bf37e9068\nMerged-In: I4233b9091d9066c4fa69f3d24aaf367ea500f760\n"
    },
    {
      "commit": "ab6ec61251786bf6b4d0407db3bc28aeefcb55db",
      "tree": "fbdb5c5bd38879440eac702018dd53c0ed639541",
      "parents": [
        "58c83fa7c8609059f3d66a5860abb302284c2981"
      ],
      "author": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Fri Feb 23 12:57:51 2018 +0000"
      },
      "committer": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Wed Feb 28 15:13:23 2018 +0000"
      },
      "message": "frameworks/base: Set LOCAL_SDK_VERSION where possible.\n\nThis change sets LOCAL_SDK_VERSION for all packages where\nthis is possible without breaking the build, and\nLOCAL_PRIVATE_PLATFORM_APIS :\u003d true otherwise.\n\nSetting one of these two will be made required soon, and this\nis a change in preparation for that. Not setting LOCAL_SDK_VERSION\nmakes the app implicitly depend on the bootclasspath, which is\noften not required. This change effectively makes depending on\nprivate apis opt-in rather than opt-out.\n\nTest: make relevant packages\nBug: 73535841\nChange-Id: I4233b9091d9066c4fa69f3d24aaf367ea500f760\n"
    },
    {
      "commit": "98af2e4fec8c417f4a674a99f4b40f6f248d6a83",
      "tree": "bfedde079d0bcc95349b07e2d2ec7fdff7baaa4b",
      "parents": [
        "cd4b087945714e4be8f2d2076b408d03843fc877"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Feb 16 10:14:57 2018 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Fri Feb 16 20:45:22 2018 +0000"
      },
      "message": "Add RequiresFeature annotation.\n\nCertain APIs require that a device have a specific feature to operate\ncorrectly, so start annotating them.\n\nTest: builds, boots\nBug: 72284763\nChange-Id: Ie2f30284bdfdb6acc4067f434eba3b5433837606\nExempt-From-Owner-Approval: simple annotations\n"
    },
    {
      "commit": "9ca162532e879ee8645ba8d4485f4b1badb8f73a",
      "tree": "1426515ce889928c8bdf8cf76ab07db153c5c072",
      "parents": [
        "bc38a217b963bf2b64128c32c2a721ac23fccc2c"
      ],
      "author": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Wed Feb 07 16:19:42 2018 -0800"
      },
      "committer": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Wed Feb 07 16:19:42 2018 -0800"
      },
      "message": "Check for null LOCATION_PROVIDERS_ALLOWED value\n\nAfter reading LOCATION_PROVIDERS_ALLOWED value from settings provider,\ncheck for null first.\n\nBug: 72711160\nBug: 72732478\nTest: Manual\nChange-Id: I813e40f11f078d80c4cc20986f030fdadfe433c6\n"
    },
    {
      "commit": "6fdf781aa78a3f9364d9f5c40039e8010fad957c",
      "tree": "33cebc401edea8cdd5af9499f819765db465da7a",
      "parents": [
        "d8bca766f664baa684b21934c4e8966f542b8a5b",
        "589f038d63d848b8d131b1888a479957da91b8b8"
      ],
      "author": {
        "name": "Maggie Wang",
        "email": "yiranwang@google.com",
        "time": "Tue Feb 06 02:35:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 06 02:35:24 2018 +0000"
      },
      "message": "Merge \"LocationManager constants for footer injector\""
    },
    {
      "commit": "589f038d63d848b8d131b1888a479957da91b8b8",
      "tree": "d9a6e353a1c99f31d84324ab8cfc63754650bf5b",
      "parents": [
        "29aa5c6260917197ec47d1dd5478032a8a905260"
      ],
      "author": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Wed Jan 31 14:57:31 2018 -0800"
      },
      "committer": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Thu Feb 01 18:23:13 2018 -0800"
      },
      "message": "LocationManager constants for footer injector\n\nAdd broadcast actions and metadata names in LocationManager for\ninjecting footers under Settings -\u003e Security \u0026 Location -\u003e Location.\n\nBug: 70350519\nTest: Manual\nChange-Id: I4d187a54cd87d8964d84bfef44515ac9ef77db29\n"
    },
    {
      "commit": "c84d42e7d6eb63781d4ad7b39171554d5fa07e97",
      "tree": "b26ca86a43aa82ef2b1dc15682659d97d4ec2e12",
      "parents": [
        "6f2e062c9ffb0dac8137a15a56235d5710b6a8d6"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Wed Jan 31 18:01:54 2018 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Thu Feb 01 18:56:53 2018 +0000"
      },
      "message": "Remove unused methods from LocationManagerService\n\nTest: Built and Manually tested\nChange-Id: I7e13d51864d86054eb9394704927dc4d449c0b13\n"
    },
    {
      "commit": "60cf5442309cfc2326a46845dd09fd2ca2218deb",
      "tree": "14ebb9b9e8b78a327431eeecc753d50c0993c17e",
      "parents": [
        "56ab48a8c7bd16a83fdb26af32065c60138e159a",
        "d679a767b49ea4bd4aee83a4bc2425fdce67b950"
      ],
      "author": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Tue Jan 30 20:52:59 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 30 20:52:59 2018 +0000"
      },
      "message": "Merge \"GPS power metrics\""
    },
    {
      "commit": "d679a767b49ea4bd4aee83a4bc2425fdce67b950",
      "tree": "c2edc4372f2a7b26c67ea61679a68ee6d8c407e4",
      "parents": [
        "8a972cf38091f36e98a522743216998c4915d24e"
      ],
      "author": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Sat Jan 20 18:57:58 2018 -0800"
      },
      "committer": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Tue Jan 30 10:12:15 2018 -0800"
      },
      "message": "GPS power metrics\n\nPower metrics is added to GPS metrics\n\nBUG:72383800\n\nTest: Manual\nChange-Id: I6b01c04984b750c6e079e26b2ad4730d647be382\n"
    },
    {
      "commit": "a1bdce38381fea495ad19c652c639abadc6700ee",
      "tree": "5e32503e59fb66a66ebee6f4b763f669b9e5f18d",
      "parents": [
        "39f143e77057a1fc0c324466b5ac35dc3f8a3ef7",
        "224f8e6954a7887f779ea96deef846556577a085"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Jan 30 04:27:30 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 30 04:27:30 2018 +0000"
      },
      "message": "Merge \"Remove undefined all-aidl-files-under\" am: ab5ac7814b am: f21b16123a\nam: 224f8e6954\n\nChange-Id: I520540d252c2c8bce0885c6902097753094a89e6\n"
    },
    {
      "commit": "a56e4df08d9c2ca0926f341b08ae73e14642f9b9",
      "tree": "52b0f6eaf63a84cb44f8d4ed5be86fe0122a26b9",
      "parents": [
        "cf5841db8db0e0446f8ba92b7a3f85b23ff030e7"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Mon Jan 29 16:39:27 2018 -0800"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Mon Jan 29 16:41:43 2018 -0800"
      },
      "message": "Remove undefined all-aidl-files-under\n\nThis is not a defined function, and there are no aidl files under these\ndirectories anyways.\n\nBug: 72661763\nTest: find location/lib -name \u0027*.aidl\u0027\nTest: find media/lib -name \u0027*.aidl\u0027\nChange-Id: I000d8febd54a50d4c07b910fa374ac8019f696be\n"
    },
    {
      "commit": "7c30c68cc594e4e4d13dca6343b118f998f4eaff",
      "tree": "0ce32334b25535b1d159ff62701412f9646bae5b",
      "parents": [
        "b62c31cdb3525979a4d36daf053b5bc5a56aa5df"
      ],
      "author": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Fri Jan 26 14:55:17 2018 -0800"
      },
      "committer": {
        "name": "Lifu Tang",
        "email": "lifu@google.com",
        "time": "Fri Jan 26 16:42:05 2018 -0800"
      },
      "message": "Move location-related code into client library\n\nThese first-party only methods can only be called by privileged\npackages, and Settings.Secure already applies strict permission check to\nthem. Therefore moving the code into client library can save us from\nunnecessary binder calls, and can also make checking the caller package\nname much easier.\n\nTest: Manual\nChange-Id: I76a939a660357f87b01ff4ac07ec3f17093d3c41\n"
    },
    {
      "commit": "aa080f96763a9d38f21fb33de93216cd207a5930",
      "tree": "a43351a52ffd887617e047fb6722651cf467aa3d",
      "parents": [
        "e65bd19fdd1c86d262997da9cd53f9006474daae"
      ],
      "author": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Thu Jan 04 15:35:11 2018 -0800"
      },
      "committer": {
        "name": "Maggie",
        "email": "yiranwang@google.com",
        "time": "Tue Jan 23 10:45:49 2018 -0800"
      },
      "message": "Deprecate location modes\n\n1. Mark public fields as deprecated: LOCATION_MODE, LOCATION_MODE_HIGH_ACCURACY, LOCATION_MODE_SENSORS_ONLY,\nLOCATION_MODE_BATTERY_SAVING, LOCATION_MODE_OFF.\n\n2. Add new public  methods to LocationManager:\nsetLocationEnabled(boolean)\nisLocationEnabled()\nsetLocationProviderEnabled(String, boolean)\n\n3. Remove LOCATION_PREVIOUS_MODE and constant\nLOCATION_MODE_PREVIOUS. Refactor code that references\nLOCATION_MODE_PREVIOUS to use LocationManager.setLocationEnabled or\nLOCATION_MODE_HIGH_ACCURACY.\n\n4. Mark deprecated fields and methods as removed: LOCATION_PROVIDERS_ALLOWED, setLocationProviderEnabled(), isLocationProviderEnabled()\n\n5. Refactor logic in Settings app and Quick Settings to call\nLocationManager.setLocationEnabled() instead of setting location mode.\n\nBug: 70990911\nTest: Manual\nChange-Id: Ia49b385f8b6a358b62291983eb0146af0ecf8e02\n"
    },
    {
      "commit": "f87fe4845608d26da0a7d5b5dc07c6d3cb3c7ff4",
      "tree": "1bc4c399b5fabcc20e105d25c8cf272f1d822873",
      "parents": [
        "19916d8b8edbf26e49bedfbd805bc3772af02576",
        "78ccaf5d287cbb6bd214913d72653aa74ecfef76"
      ],
      "author": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Fri Jan 19 21:40:07 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 19 21:40:07 2018 +0000"
      },
      "message": "Merge \"GPS Signal Quality added to BatteryStats\""
    },
    {
      "commit": "78ccaf5d287cbb6bd214913d72653aa74ecfef76",
      "tree": "37cbe1229227033b6d6f7fe7f7c7ff9405e0a684",
      "parents": [
        "61823f3a23750d672947ba7b5bb6dd4f1ff5503f"
      ],
      "author": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Sat Dec 23 16:16:21 2017 -0800"
      },
      "committer": {
        "name": "Siddharth Ray",
        "email": "siddharthr@google.com",
        "time": "Mon Jan 15 17:24:07 2018 -0800"
      },
      "message": "GPS Signal Quality added to BatteryStats\n\n- GPS Signal Quality (Top four average CN0) added to Batterystats\n(Aggregate + Historian)\n\n- Added API to obtain Gps battery stats for power drain diagnostics.\n\nBUG:38354997\n\nTest: Manual\n(https://docs.google.com/document/d/1X6g7HBZ80GA3KuqEYyQtD0WQRUnXN8nbCpf0G1HvzqY/edit?usp\u003dsharing)\n\nChange-Id: Ic23bfa758977bf0677f368f617b0c28196d2d0c1\n"
    },
    {
      "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": "eb370876bb8b7846dab7e3afba1dff3ae5ddac27",
      "tree": "607886dd5d4cb26d364792c7722b8ccac54471c6",
      "parents": [
        "3e4ae1e67cf7c6ae74c692adad53925b6ad0072b",
        "fab2e2cbaab77d85c708ede54029b46d938f8e66"
      ],
      "author": {
        "name": "Maggie Wang",
        "email": "yiranwang@google.com",
        "time": "Fri Dec 08 00:00:14 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 08 00:00:14 2017 +0000"
      },
      "message": "Merge \"Send MODE_CHANGING broadcast before location mode change.\""
    },
    {
      "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": "2710ca1e9d5ed8b2e755a9b948be8113ebb82023",
      "tree": "4704f3d690427e6da757b19040fa458182938e7a",
      "parents": [
        "dcb520b4ed5889281124d3520a1675d0a7418a0a"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Dec 05 18:36:56 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Dec 07 07:38:59 2017 +0000"
      },
      "message": "Flatten dependency hierarchy of legacy-android-test\n\nPrevious changes statically included legacy-android-test in preparation\nfor removing android.test.* and junit.* classes from the android.jar.\nUnfortunately, that lead to duplicate classes between APKs and the\nbootclasspath which caused build problems (Proguard) and also runtime\nproblems (when targeting and running on older releases).\n\nSwitching from statically including the classes to using the runtime\nlibraries cannot be done in one step because legacy-android-test is\nstatically included in libraries which are used in many APKs and so\nremoving it from those libraries requires that all APKs be updated at\nonce. Doing that atomically across dozens of projects is not practical.\n\nThis change modifies APKS that statically include the\nlegacy-android-test library indirectly.\n\n* If the APK manifest uses the android.test.runner library then the APK\n  is modified to stop statically including legacy-android-test and\n  instead build against android.test.base/mock/runner libraries instead.\n\n* Otherwise, the APK statically includes legacy-android-test.\n\nAlso, any libraries that statically include are modified to stop\nstatically including it and if it has source dependencies on the classes\nis changed to build against the android.test.base/mock/runner libraries.\n\nThe following change descriptions were generated automatically and so\nmay be a little repetitive. They are provided to give the reviewer\nenough information to check the comments match what has actually been\nchanged and check the reasoning behind the changes.\n\n* cmds/uiautomator/instrumentation/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because uiautomator-instrumentation is not a package so does not\n    need to statically include the classes\n\n* cmds/uiautomator/library/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    uiautomator.core has a source dependency on its classes\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because uiautomator.core is not a package so does not need to\n    statically include the classes\n\n* core/tests/BroadcastRadioTests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    BroadcastRadioTests\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n    The classes do not need to be statically included because the\n    classes will be provided by the runtime, either from the default\n    bootclasspath or from the android.test.runner library that\n    BroadcastRadioTests specifies in its manifest.\n\n* core/tests/coretests/Android.mk\n    Added \u0027android.test.base\u0027 and \u0027android.test.mock\u0027 to\n    LOCAL_JAVA_LIBRARIES because FrameworksCoreTests\u0027s source depends\n    on their classes and because of these changes they are no longer\n    present on the compilation path. The classes do not need to be\n    statically included because the classes will be provided by the\n    runtime, either from the default bootclasspath or from the\n    android.test.runner library that FrameworksCoreTests specifies in\n    its manifest.\n\n* core/tests/featureflagtests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksCoreFeatureFlagTests\u0027s source depends on its classes and\n    because of these changes they are no longer present on the\n    compilation path. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that FrameworksCoreFeatureFlagTests specifies in its manifest.\n\n* core/tests/systemproperties/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksCoreSystemPropertiesTests\u0027s source depends on its classes\n    and because of these changes they are no longer present on the\n    compilation path. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that FrameworksCoreSystemPropertiesTests specifies in its manifest.\n\n* core/tests/utillib/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because frameworks-core-util-lib is not a package so does not need\n    to statically include the classes\n\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    frameworks-core-util-lib has a source dependency on its classes\n\n* core/tests/utiltests/Android.mk\n    Added \u0027android.test.base\u0027 and \u0027android.test.mock\u0027 to\n    LOCAL_JAVA_LIBRARIES because FrameworksUtilTests\u0027s source depends\n    on their classes and because of these changes they are no longer\n    present on the compilation path. The classes do not need to be\n    statically included because the classes will be provided by the\n    runtime, either from the default bootclasspath or from the\n    android.test.runner library that FrameworksUtilTests specifies in\n    its manifest.\n\n* location/tests/locationtests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksLocationTests\u0027s source depends on its classes and because\n    of these changes they are no longer present on the compilation\n    path. The classes do not need to be statically included because the\n    classes will be provided by the runtime, either from the default\n    bootclasspath or from the android.test.runner library that\n    FrameworksLocationTests specifies in its manifest.\n\n* lowpan/tests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksLowpanApiTests\u0027s source depends on its classes and\n    because of these changes they are no longer present on the\n    compilation path. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that FrameworksLowpanApiTests specifies in its manifest.\n\n* packages/Osu2/tests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    OsuTests\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path. The\n    classes do not need to be statically included because the classes\n    will be provided by the runtime, either from the default\n    bootclasspath or from the android.test.runner library that OsuTests\n    specifies in its manifest.\n\n* packages/SettingsProvider/test/Android.mk\n    Replaced \u0027legacy-android-test\u0027 with \u0027android.test.base\u0027 in\n    LOCAL_JAVA_LIBRARIES because SettingsProviderTest\u0027s source depends\n    on its classes. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that SettingsProviderTest specifies in its manifest.\n\n* services/tests/notification/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksNotificationTests\u0027s source depends on its classes and\n    because of these changes they are no longer present on the\n    compilation path. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that FrameworksNotificationTests specifies in its manifest.\n\n* services/tests/servicestests/Android.mk\n    Replaced \u0027legacy-android-test\u0027 with \u0027android.test.base\u0027 and\n    \u0027android.test.runner\u0027 in LOCAL_JAVA_LIBRARIES because\n    FrameworksServicesTests\u0027s source depends on their classes. The\n    classes do not need to be statically included because the classes\n    will be provided by the runtime, either from the default\n    bootclasspath or from the android.test.runner library that\n    FrameworksServicesTests specifies in its manifest.\n\n* services/tests/shortcutmanagerutils/Android.mk\n    Added \u0027android.test.runner.stubs\u0027 to LOCAL_JAVA_LIBRARIES because\n    ShortcutManagerTestUtils has a source dependency on its classes\n\n* tests/AppLaunch/Android.mk\n    Replaced \u0027legacy-android-test\u0027 with \u0027android.test.base\u0027 and\n    \u0027android.test.runner\u0027 in LOCAL_JAVA_LIBRARIES because AppLaunch\u0027s\n    source depends on their classes. The classes do not need to be\n    statically included because the classes will be provided by the\n    runtime, either from the default bootclasspath or from the\n    android.test.runner library that AppLaunch specifies in its\n    manifest.\n\n* tests/Camera2Tests/SmartCamera/SimpleCamera/tests/Android.mk\n    Replaced \u0027legacy-android-test\u0027 with \u0027android.test.base\u0027 in\n    LOCAL_JAVA_LIBRARIES because SmartCamera-tests\u0027s source depends on\n    its classes. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that SmartCamera-tests specifies in its manifest.\n\n* tests/ServiceCrashTest/Android.mk\n    Replaced \u0027legacy-android-test\u0027 with \u0027android.test.base\u0027 in\n    LOCAL_JAVA_LIBRARIES because ServiceCrashTest\u0027s source depends on\n    its classes. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that ServiceCrashTest specifies in its manifest.\n\n* tests/net/Android.mk\n    Added \u0027android.test.base\u0027 and \u0027android.test.mock\u0027 to\n    LOCAL_JAVA_LIBRARIES because FrameworksNetTests\u0027s source depends on\n    their classes and because of these changes they are no longer\n    present on the compilation path. The classes do not need to be\n    statically included because the classes will be provided by the\n    runtime, either from the default bootclasspath or from the\n    android.test.runner library that FrameworksNetTests specifies in\n    its manifest.\n\n* tests/testables/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because testables is not a package so does not need to statically\n    include the classes\n\n    Added \u0027android.test.mock\u0027 to LOCAL_JAVA_LIBRARIES because testables\n    has a source dependency on its classes\n\n* tests/utils/testutils/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because frameworks-base-testutils is not a package so does not need\n    to statically include the classes\n\n    Added \u0027android.test.base\u0027 and \u0027android.test.mock\u0027 to\n    LOCAL_JAVA_LIBRARIES because frameworks-base-testutils has a source\n    dependency on their classes\n\n* wifi/tests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksWifiApiTests\u0027s source depends on its classes and because\n    of these changes they are no longer present on the compilation\n    path. The classes do not need to be statically included because the\n    classes will be provided by the runtime, either from the default\n    bootclasspath or from the android.test.runner library that\n    FrameworksWifiApiTests specifies in its manifest.\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: Ia6a48234f28e7e1789049cf4b37cd7fe0bc8251c\n"
    },
    {
      "commit": "5157aa73d9e2cf3b0460031422dd2cfed4eeec3d",
      "tree": "c9585f8a623c1a5fdb4b1a2290eb5e49c53adf9a",
      "parents": [
        "c32dec1f262995f2f100af61c0728517245ae2c9"
      ],
      "author": {
        "name": "tccyp",
        "email": "tccyp@google.com",
        "time": "Mon Nov 27 10:55:18 2017 -0800"
      },
      "committer": {
        "name": "Yipeng Cao",
        "email": "tccyp@google.com",
        "time": "Mon Nov 27 19:55:39 2017 +0000"
      },
      "message": "Fixed the make file for location tests\n\nmake -j32 FrameworksLocationTests can not find the location module\nAdded one extra make file to help the ninja find the current make file.\n\nTo run the tests, use any of this:\n1. runtest frameworks-location\n2. forrest test FrameworksLocationTests\n\nBug: 69375757\nTest: make -j32 FrameworksLocationTests\n\nChange-Id: I7572cc494f1851ea6167e99c91af8244efaf15b5\n"
    },
    {
      "commit": "6cc7d8396fd25477887edbdc4a83547d5b5ecd2f",
      "tree": "f21d5ea7ed744208429dd27e6003984ed0c4e595",
      "parents": [
        "9d3458c5ff5f945a98ffc790dd60b7cd7c342a51"
      ],
      "author": {
        "name": "tccyp",
        "email": "tccyp@google.com",
        "time": "Wed Nov 15 10:51:53 2017 -0800"
      },
      "committer": {
        "name": "tccyp",
        "email": "tccyp@google.com",
        "time": "Fri Nov 17 09:58:12 2017 -0800"
      },
      "message": "Location Unit tests\n\n- Added the GnssStatus unit test\n- Upgraded the runner to AndroidJunitRunner\n- Removed the old non-working unit tests.\n\nTo run the tests, use any of this:\n1. runtest frameworks-location\n2. forrest test FrameworksLocationTests\n\nBug: 69375757\nTest: runtest frameworks-location\n\nChange-Id: Ia52a8ce51ab9334ad1b8dd1686303270ceca270b\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"
    }
  ],
  "next": "850c83e6da3b34a4eab804133420247fc9dbb8a1"
}
