)]}'
{
  "log": [
    {
      "commit": "679436ad60f424a71eb9c0e7bf2810171cd3272d",
      "tree": "7d7d7db8e2f88ee8985e18e3fdc8e62134f1f52a",
      "parents": [
        "6bb6fad16d93a5859d47dcf962337c2719e585dd",
        "b455e722b1aa3ec08c39e8bce81d9fe7bc0304b5"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 18 22:08:38 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 18 22:08:38 2017 +0000"
      },
      "message": "Merge \"Add isMobileDataEnabled in TelephonyManager.\""
    },
    {
      "commit": "f1141c00411296b59b59376182083685248f69c8",
      "tree": "999583851b79c27e2571cf7d9ed4befae365b8ff",
      "parents": [
        "51f6cd70316cdd0662e40ad7b0109effab9cd9ad"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 18 09:38:36 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 18 09:38:51 2017 -0800"
      },
      "message": "Removed Parcelable from FieldClassification.\n\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationTest\n\nBug: 70407264\n\nChange-Id: I667bb15e2341a926cdf35e928261bd5fa474a22b\n"
    },
    {
      "commit": "6d3348451a37541ec07ba43d94dfc44fe5b24a9a",
      "tree": "2e89e427f6b030f70c481b974ae383e1b11a6687",
      "parents": [
        "205523d0a22df5fee55170f2a4528f0274bd9737",
        "3e3ebe5f30dbcd241ff90ce3386af1e9c3d157dc"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Mon Dec 18 14:57:47 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 18 14:57:47 2017 +0000"
      },
      "message": "Merge \"API updated for ICU4J 60.1\""
    },
    {
      "commit": "216da5dc447943e79d93a76c8c5da202824cda9d",
      "tree": "5000d97019adb9c358b2146868c499448827fc9b",
      "parents": [
        "3e185034d7d842abf2877ef70cfdc1ef79adeb8f",
        "78172e70f4c5d776678551965db7c167ee11703e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Dec 16 00:57:50 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 16 00:57:50 2017 +0000"
      },
      "message": "Merge \"Made Autofill Field Classification API public and documented it.\""
    },
    {
      "commit": "6831a2646f8d25eb8ce33653e4d3ac0020fecae9",
      "tree": "ab4b3dbfa5f82b2f76c2a67926cc32e18d4c07b9",
      "parents": [
        "73617b0cc04e82a79721a77b73daefe5a93c223f",
        "0a368b2c391dd3ebaf6b8917c16c41b65c1d5ab7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Dec 16 00:03:53 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 16 00:03:53 2017 +0000"
      },
      "message": "Merge \"Adds API for apps to push events to statsd.\""
    },
    {
      "commit": "73617b0cc04e82a79721a77b73daefe5a93c223f",
      "tree": "05653af06ad1f6628db2995d0df4ed3a884861e2",
      "parents": [
        "8f02229866f3056b56d3c379058f8cd49e871b3c",
        "79e7ce39e94597be98786119121e0d6a37b840f3"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Dec 16 00:00:26 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 16 00:00:26 2017 +0000"
      },
      "message": "Merge \"Add hints for toggles in Slice\""
    },
    {
      "commit": "1d521a54bfac11fe46ba9cb3bbe92662b73c9062",
      "tree": "27aa400170b1eae27b349fe7c5565de416b9c6c5",
      "parents": [
        "e67de60fc02b81f4f5b9fffc23e90f886a51bc68",
        "e2c645179f99c6ff700e5208855789b71e1bf30c"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Fri Dec 15 19:49:02 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 15 19:49:02 2017 +0000"
      },
      "message": "Merge \"Add APIs for slice pinning\""
    },
    {
      "commit": "e67de60fc02b81f4f5b9fffc23e90f886a51bc68",
      "tree": "8791975b5c0875fa4522b10711e1cb580d59798f",
      "parents": [
        "020268e85324920dd57514046bfcd502290168a7",
        "7bb587d72b8bb5ba8bd2d7530dbd89b4faac289f"
      ],
      "author": {
        "name": "Hansong Zhang",
        "email": "hsz@google.com",
        "time": "Fri Dec 15 19:26:11 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 15 19:26:11 2017 +0000"
      },
      "message": "Merge \"Publish Bluetooth HID Device Profile Service API\""
    },
    {
      "commit": "d1319bb059fbf6f30cfaf37f236f82933ce61291",
      "tree": "5988c4a151a344e34ecee1b9f3d37e7d142ca632",
      "parents": [
        "5c9d80199e48322ab9939bc78d3ffeb224817a4c",
        "c4f87e9ceb4d5ce78c1663912bc166e0d41554aa"
      ],
      "author": {
        "name": "Pavel Grafov",
        "email": "pgrafov@google.com",
        "time": "Fri Dec 15 13:47:55 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 15 13:47:55 2017 +0000"
      },
      "message": "Merge \"Introduce DISALLOW_UNIFIED_PASSWORD.\""
    },
    {
      "commit": "1895f2e5bb3c07b2dc85ed6267848e820d6c39b0",
      "tree": "eea04a8b4104e381ceb98ae57e27ed578a1d1629",
      "parents": [
        "85ca6f75c6b5925da5485621632ade81e76b6328"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Dec 12 16:16:26 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 15 07:34:47 2017 +0000"
      },
      "message": "Remove non-junit android.test.runner classes from android.jar\n\nThis removes those android.test.** classes which are part of the\nandroid.test.runner stubs jar from the main android.jar.\n\nThe junit classes will be removed at a later date. It cannot be done at\nthe moment because it requires a lot of changes to the build files.\n\nThis change is being done now rather than wait until they can all be\nremoved together because the code base is a moving target. Doing this\nchange minimizes the window during which other developers could either\nrevert the previous changes that make this possible or add new code that\nrelies on the android.test.runner classes being in android.jar and so\nwould require yet more changes.\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: I4e3c3bfea77ce15ca7a9ba7d36aee5396f67affb\n"
    },
    {
      "commit": "7bb587d72b8bb5ba8bd2d7530dbd89b4faac289f",
      "tree": "9c138feb2f98bdf9b7a91a61054b5ae685485bec",
      "parents": [
        "62c1fb0f4993eecc7c78eac0e54427eb47a5a9bc"
      ],
      "author": {
        "name": "Hansong Zhang",
        "email": "hsz@google.com",
        "time": "Wed Dec 06 16:20:22 2017 -0800"
      },
      "committer": {
        "name": "Hansong Zhang",
        "email": "hsz@google.com",
        "time": "Thu Dec 14 20:06:12 2017 -0800"
      },
      "message": "Publish Bluetooth HID Device Profile Service API\n\nEnable the BluetoothHidDevice API in framework.\n\nBug: 63384609\nTest: SL4A HID test; test with apps using BluetoothHidDevice\nChange-Id: I52ca4674f11179f865bdff22e0289dfe893c40f5\n"
    },
    {
      "commit": "78172e70f4c5d776678551965db7c167ee11703e",
      "tree": "8f85ca29bf3c9f340153ef6b107f88112ca7e156",
      "parents": [
        "a629e4c393e5ac52c07598a5d3b4ed120115c97d"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Dec 08 17:01:15 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 14 19:48:26 2017 -0800"
      },
      "message": "Made Autofill Field Classification API public and documented it.\n\nTest: mmm frameworks/base/:doc-comment-check-docs\nTest: atest FrameworksCoreTests:SettingsBackupTest\nTest: m -j 100 update-api\n\nFixes: 67867469\n\nChange-Id: Iedf56a2bbcde3826eb22f5ed7a96d6ed70b968f4\n"
    },
    {
      "commit": "0a368b2c391dd3ebaf6b8917c16c41b65c1d5ab7",
      "tree": "4ef577b9c57a137be83329a37037c0310c152650",
      "parents": [
        "b669be1dcca1fb131934fa6322de77f5e0c6eb7b"
      ],
      "author": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Wed Dec 06 16:28:16 2017 -0800"
      },
      "committer": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Thu Dec 14 16:19:29 2017 -0800"
      },
      "message": "Adds API for apps to push events to statsd.\n\nThis API allows app to construct custom metrics based on labels\nchosen by the app developers. Also added some buttons to manually\ntest this functionality in the dogfood app.\n\nTest: Verified that Android can be built and tested with custom app.\nBug: 69522276\nChange-Id: Ifb7abea4c1d62fb435a9cb6f32df12bc2234d82f\n"
    },
    {
      "commit": "b669be1dcca1fb131934fa6322de77f5e0c6eb7b",
      "tree": "31974d16ba390f23f7c60524a8d15fef82df9413",
      "parents": [
        "414ad1835878980a8784d6c511187a338b349fbe",
        "ccb9365019d28b297ed501c5b5a2d7c8e7982acf"
      ],
      "author": {
        "name": "Android Build Merger (Role)",
        "email": "noreply-android-build-merger@google.com",
        "time": "Thu Dec 14 21:50:52 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 14 21:50:52 2017 +0000"
      },
      "message": "Merge \"Merge \"Use consistent naming for allocating SPI.\" am: bf48afea49 am: 4753ed4b1b am: f71c95dfe4\""
    },
    {
      "commit": "414ad1835878980a8784d6c511187a338b349fbe",
      "tree": "4eee21789296f491cff0954e310efbf836efdb87",
      "parents": [
        "33d9a341d520dab500fdbe6d5bb6b1e3e25ea709",
        "39bf43519dc13302cb78aea1e6907542e3337177"
      ],
      "author": {
        "name": "Mady Mellor",
        "email": "madym@google.com",
        "time": "Thu Dec 14 21:48:59 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 14 21:48:59 2017 +0000"
      },
      "message": "Merge \"Adds hint summary to slice\""
    },
    {
      "commit": "ccb9365019d28b297ed501c5b5a2d7c8e7982acf",
      "tree": "259af9bd0f22fd00e333fd0fb0fed395db153527",
      "parents": [
        "33d9a341d520dab500fdbe6d5bb6b1e3e25ea709",
        "f71c95dfe4ef7ce1085d97b9a6d25c494e0dc6c2"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Thu Dec 14 21:48:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 14 21:48:58 2017 +0000"
      },
      "message": "Merge \"Use consistent naming for allocating SPI.\" am: bf48afea49 am: 4753ed4b1b\nam: f71c95dfe4\n\nChange-Id: Ib6845ab0d7f385fbd1d59c0179771542e12c8be0\n"
    },
    {
      "commit": "33d9a341d520dab500fdbe6d5bb6b1e3e25ea709",
      "tree": "3f6b389e0cf235195b638fdbb9b40a1633a4cc3b",
      "parents": [
        "1418d5a1bb2e35514889c222925a1aa8f34fd41a",
        "556ac61c5ffd2ad0cb91afedca8dc18a5f014dfc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 14 21:36:28 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 14 21:36:28 2017 +0000"
      },
      "message": "Merge \"Filter out position jitter in hover tooltip handling\""
    },
    {
      "commit": "bf48afea49f616f4def5b802b54cb313289a0c7f",
      "tree": "7fe6818a5f19784869bcbe18f82cc4af038c0c81",
      "parents": [
        "3adfec2de3176b575a8e7affc4fc30103ae2fa2f",
        "5fb929032de14ca78163e1d0c42c34f6fb287da4"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Thu Dec 14 21:10:16 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 14 21:10:16 2017 +0000"
      },
      "message": "Merge \"Use consistent naming for allocating SPI.\""
    },
    {
      "commit": "e2c645179f99c6ff700e5208855789b71e1bf30c",
      "tree": "f4107f0662cf95864a9c9ba3bd0e2b7a74820045",
      "parents": [
        "b4183a0e8034258bdc67fe0f44444a473f5f46aa"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Mon Dec 11 15:14:54 2017 -0500"
      },
      "committer": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Thu Dec 14 16:02:23 2017 -0500"
      },
      "message": "Add APIs for slice pinning\n\nThese APIs allow apps to know when they should be sending updates\nto any given slice uri.\n\nTest: update-api\nBug: 68378571\nChange-Id: I4fa218c8d376692fa843f21777c87d592169a377\n"
    },
    {
      "commit": "c4f87e9ceb4d5ce78c1663912bc166e0d41554aa",
      "tree": "2ea863f0692a2e91d1b4ee31df19b770666eab72",
      "parents": [
        "0630ad6d152e3ece554d804968ad83da85ab753d"
      ],
      "author": {
        "name": "Pavel Grafov",
        "email": "pgrafov@google.com",
        "time": "Thu Oct 26 16:34:25 2017 +0100"
      },
      "committer": {
        "name": "Pavel Grafov",
        "email": "pgrafov@google.com",
        "time": "Thu Dec 14 20:53:27 2017 +0000"
      },
      "message": "Introduce DISALLOW_UNIFIED_PASSWORD.\n\nWhen DISALLOW_UNIFIED_PASSWORD is enforced by managed profile\nowner, the user is disallowed to user single lock for both primary\nuser and the profile.\n\nDMP.isUsingUnifiedPassword() can be called by DPC to check if\nthis restriction is obeyed.\n\nTest: make cts-verifier\nTest: cts-tradefed run cts -m CtsDevicePolicyManagerTestCases -t\n  com.android.cts.devicepolicy.ManagedProfileTest#testIsUsingUnifiedPassword\nTest: cts-tradefed run cts -m CtsAdminTestCases -t\n  android.admin.cts.DevicePolicyManagerTest#testIsUsingUnifiedPassword_failIfNotProfileOwner\nBug: 63909482\nChange-Id: Ib758e32d4bf4012d805185bce874f481e17576ba\n"
    },
    {
      "commit": "ccb2aa8b26fb9e614d977412513c97fad3b6feef",
      "tree": "69faf4d2cad45a9f4b1f1509f5b10c66fd381199",
      "parents": [
        "b4183a0e8034258bdc67fe0f44444a473f5f46aa",
        "c809542c3081ee2fd31313f29626cc0b765147cf"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 14 15:07:24 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 14 15:07:24 2017 +0000"
      },
      "message": "Merge \"Add WebView Tracing API.\""
    },
    {
      "commit": "3e3ebe5f30dbcd241ff90ce3386af1e9c3d157dc",
      "tree": "6f502bbbd1ce56b700412be64e9765d18d60deac",
      "parents": [
        "6f6026d3bb840e0139b3b449217ac646cc5b8c38"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Wed Dec 13 19:04:37 2017 +0000"
      },
      "committer": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Thu Dec 14 11:30:26 2017 +0000"
      },
      "message": "API updated for ICU4J 60.1\n\nAPI details:\n- New DisplayContext value for initializing LocaleDisplayNames\n  It\u0027s an option to set whether locale display name should fallback to\n  use default value when lang data is not available in attribtues, e.g. separator\n  See CTS test ULocaleTest.TestDisplayNames for its usage\n  Upstream ticket: http://bugs.icu-project.org/trac/ticket/12700\n- New method MeasureFormat.getUnitDisplayName to to get unit display names\n  CTS: MeasureUnitTest.testDisplayNames\n  Upstream ticket: http://bugs.icu-project.org/trac/ticket/12029\n- New getters and setters in String type for DecimalFormatSymbols\n  Useful when the symbol can\u0027t be presented by one 2-byte java char\n  Upstream ticket: http://bugs.icu-project.org/trac/ticket/10368\n- Expose TimeZone.SystemTimeZoneType values b/65475899\n  Existing method TimeZone.getAvailableIDs takes the enum type\n  but there was no such value exposed in the Android SDK\n- New constants for Unicode 10.0\n  Details: http://unicode.org/versions/Unicode10.0.0/\n  UScript, UCharacter, UProperty\n- New contants in MeasureUnit\n\nBug: 68208236\nBug: 65475899\nTest: m\nTest: m update-api\nChange-Id: I116b0e6f5a3ffb0820ed3802f7e063f9c052dd53\n"
    },
    {
      "commit": "3706cf9e287090b215fbdb37a9420e8bee745b8a",
      "tree": "4489211ade4a4a9f8f8a0eb3eae31e109b143589",
      "parents": [
        "a1588c523889f68e1871fc686e170e75503071ba",
        "a80bfb5d55edc2a2c292358243a2e94c2b130302"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Thu Dec 14 02:21:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 14 02:21:12 2017 +0000"
      },
      "message": "Merge \"Add AppComponentFactory API\""
    },
    {
      "commit": "1f82396299a6a73ab1bcfe72f07e23b60be88ff3",
      "tree": "c1df45663dd79bccfac9c66f2c6177a64923c6f1",
      "parents": [
        "83297f29c00500d64ff457438ffb459ad09f70d0",
        "48f1a647655f3479bc655d2c3c4873c6aa9b712c"
      ],
      "author": {
        "name": "Mohammed Khider",
        "email": "gomo@google.com",
        "time": "Thu Dec 14 01:16:50 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 14 01:16:50 2017 +0000"
      },
      "message": "Merge \"Duty Cycling and Low Power Mode GNSS feature implementations\""
    },
    {
      "commit": "79972cd448d7379596050ea74f91ea2882b57897",
      "tree": "3a7786aa25842529154ba5990bca3e773d6ad9dd",
      "parents": [
        "2d48f13c7d1e344e6f160f54b9affdd799a2b5b7",
        "fff6f59a63304be50e7a251fb4fca38ae0090fc4"
      ],
      "author": {
        "name": "Chen Xu",
        "email": "fionaxu@google.com",
        "time": "Wed Dec 13 23:20:30 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 13 23:20:30 2017 +0000"
      },
      "message": "Merge \"new carrier id APIs\""
    },
    {
      "commit": "2619e8f0112596faf5cf3afc5a7b7227564b1c59",
      "tree": "8ce7915b16465bfae25a5ff8cb1232880be77b39",
      "parents": [
        "edf53637bdfd98c7e559e88fedb8caaf653d5dd6",
        "8439ac08b1b8ef362cd649dbefdea4ac140051e2"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Wed Dec 13 22:48:03 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 13 22:48:03 2017 +0000"
      },
      "message": "Merge \"Start accepting Executors instead of Handlers.\""
    },
    {
      "commit": "b455e722b1aa3ec08c39e8bce81d9fe7bc0304b5",
      "tree": "9adf24126df9a2e0eb4286f4bca964bcad738bfe",
      "parents": [
        "2b460020c3d2b02cfe9ad6eabed59309d6b28348"
      ],
      "author": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Tue Nov 28 15:57:14 2017 -0800"
      },
      "committer": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Wed Dec 13 14:44:39 2017 -0800"
      },
      "message": "Add isMobileDataEnabled in TelephonyManager.\n\nAdded a new hidden API isMobileDataEnabled in TelephonyManager.\nRename related APIs to isUserMobileDataEnabled,\nisUserMobileDataEnabled and setUserMobileDataEnabled to better\nclarify their functionality.\n\nBug: 69814555\nTest: build\nChange-Id: I2f186f1e7550cafbe4ee3a5af293c39274cbfeaa\n"
    },
    {
      "commit": "edf53637bdfd98c7e559e88fedb8caaf653d5dd6",
      "tree": "506b28c5ea824e59884009f95b4a044614e25c1e",
      "parents": [
        "47f4e2a536c56e2e0e2a81a0cc937e76ac46a617",
        "3d89874bb5720f6a7c97334f92822b046fb3a027"
      ],
      "author": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Wed Dec 13 22:29:36 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 13 22:29:36 2017 +0000"
      },
      "message": "Merge \"Deprecate setVoicemailRingtoneUri and setVoicemailVibrationEnabled\" am: 8244ebfc4e am: a02bbdb8d8\nam: 3d89874bb5\n\nChange-Id: I6b1882e006a7b708c5979b4970a2ddc9be35f93b\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": "2cea154e5293d871360932943932987277ccbba8",
      "tree": "aaab697f8e1ec5abca014757c7c83f7fcb4b3594",
      "parents": [
        "9933afb1f707b2581f41f95bd3800151e460b06c",
        "443b6431dd22129153a579760c0f360d89448c55"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 13 21:12:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 13 21:12:32 2017 +0000"
      },
      "message": "Merge \"Make DevicePolicyManager.isAffiliatedUser public\""
    },
    {
      "commit": "8439ac08b1b8ef362cd649dbefdea4ac140051e2",
      "tree": "f7dfbb91bb60ff3c2e8768aa9975ca45b4563e59",
      "parents": [
        "ff38f236b55b51a9f8e03b909f4791ccca329c48"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Dec 12 17:26:23 2017 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Dec 13 13:59:04 2017 -0700"
      },
      "message": "Start accepting Executors instead of Handlers.\n\nAfter discussion in API council, our new best-practices are to have\ndevelopers provide an Executor to dispatch callbacks/listeners on,\ninstead of the previous guidance of using a Handler.\n\nDefine Context.getMainExecutor() to easily obtain an Executor\nassociated with the main thread of application.  This allows new\nAPIs to require a @NonNull Executor.  Also define a new\n@CallbackExecutor auto-doc annotation that explains background and\npoints developers at new Context method above.\n\nTest: cts-tradefed run commandAndExit cts-dev -m CtsContentTestCases -t android.content.cts.ContextTest#testMainLooper\nTest: cts-tradefed run commandAndExit cts-dev -m CtsContentTestCases -t android.content.cts.ContextTest#testMainExecutor\nBug: 70348426\nChange-Id: I536892bcd80fcfba1bb1ddf67648c08a26d7ddd2\n"
    },
    {
      "commit": "a80bfb5d55edc2a2c292358243a2e94c2b130302",
      "tree": "70434f7dbea766e1e1193026c552a1973567c373",
      "parents": [
        "3fe9d790df12012ce7009897e027d01ebf78774e"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Thu Nov 16 17:15:37 2017 -0500"
      },
      "committer": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Wed Dec 13 15:36:26 2017 -0500"
      },
      "message": "Add AppComponentFactory API\n\nAPI to allow some classloader control over instantiation of\nitems from application\u0027s manifest. Unlike the first attempt\nthis does not encourage developers to extend Application, it simply\nprovides a small surface to allow control over the creation of objects\nlike Activities, Services, Receivers, and Providers.\n\nTest: manual\nBug: 70623879\nChange-Id: Idcab7c60f54ce3f4575ac29dcdcae321cf458bf3\n"
    },
    {
      "commit": "34116c78d915999a0a3e7e4a72552e441f48590e",
      "tree": "7beb0f31c21270f2d93576697fd2d887b41f5dff",
      "parents": [
        "ff38f236b55b51a9f8e03b909f4791ccca329c48",
        "a59a5eb71b6d49494e6307fb4342d4024174f5c7"
      ],
      "author": {
        "name": "Jordan Liu",
        "email": "jminjie@google.com",
        "time": "Wed Dec 13 18:20:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 13 18:20:12 2017 +0000"
      },
      "message": "Merge \"Unhide signal strength carrier config\""
    },
    {
      "commit": "443b6431dd22129153a579760c0f360d89448c55",
      "tree": "8d671385d0ea64b49922bf993902d96c6928a8d0",
      "parents": [
        "f3f422e8dd088561f10d481c658a06d9c6bd2543"
      ],
      "author": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Wed Dec 13 12:44:31 2017 +0000"
      },
      "committer": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Wed Dec 13 17:40:36 2017 +0000"
      },
      "message": "Make DevicePolicyManager.isAffiliatedUser public\n\n- Simplified javadoc on device affiliation concept. \"affiliated with the\n  device\" will be used to describe affiliation with device owner user,\n  as defined in #isAffiliatedUser javadoc.\n- Link to #isAffiliatedUser whenever device affiliation is mentioned\n\nBug: 67582080\nTest: None\nChange-Id: I4395ff980aa1626d6ff352d2f16777887784082c\n"
    },
    {
      "commit": "6cff5c2840f6968b79c714d326c1c26ab66ef030",
      "tree": "d271371f2bc6859da4317f0a6bea1b2979d109a8",
      "parents": [
        "6f6026d3bb840e0139b3b449217ac646cc5b8c38",
        "28c660f11ac10c5dfe16fbdc7bb04ee82328e4d4"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Wed Dec 13 16:53:55 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 13 16:53:55 2017 +0000"
      },
      "message": "Merge \"API that reports first SDK level of the device.\""
    },
    {
      "commit": "c809542c3081ee2fd31313f29626cc0b765147cf",
      "tree": "069d1e2db4b93b80f5410ee5c797fe9404a344a4",
      "parents": [
        "25c3c34c81b38c7afacbbd456236e1bfaaa1e0eb"
      ],
      "author": {
        "name": "Tim Volodine",
        "email": "timvolodine@google.com",
        "time": "Fri Nov 10 21:07:36 2017 +0000"
      },
      "committer": {
        "name": "Tim Volodine",
        "email": "timvolodine@google.com",
        "time": "Wed Dec 13 15:27:54 2017 +0000"
      },
      "message": "Add WebView Tracing API.\n\nAdd classes/interfaces necessary for the support of tracing API\nin WebView.\n\nIn particular:\n- TracingController: singleton class for starting and stopping\n  tracing and inspecting tracing status.\n- TracingConfig: holds tracing configuration, such as categories\n  to filter and the tracing mode.\n- TracingOutputStream: interface for capturing tracing data.\n- TracingFileOutputStream: supporting class for capturing tracing\n  data to a file.\n\nBUG: 63750258\nTest: in progress\n\nChange-Id: I7decd486788766fc8dfa766ae027c02f9d4c6f80\n"
    },
    {
      "commit": "161614e12c6d3a5f17acd530417e7439326427d2",
      "tree": "e01b01c69a8a4f789ca35d5b48ff4033c58da4ac",
      "parents": [
        "2bfdce3b04900b1030443085ad7f28e30372889a",
        "ab223112d1a163e641e7c1adb6429e27e37675a6"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Wed Dec 13 10:15:46 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 13 10:15:46 2017 +0000"
      },
      "message": "Merge changes from topic \"deprecated_sdk_1\"\n\n* changes:\n  Reject apks targeting deprecated sdk\n  Add Build.Version.MIN_SUPPORTED_TARGET_SDK_INT field.\n"
    },
    {
      "commit": "25787529b5ab5dd73011c0f3319cae0268ee15c6",
      "tree": "ca804f91d5ad24e72bb63d06724df0758c991833",
      "parents": [
        "e6b8e7cf5cb74a264f55c8a88c14e1ac4689dc71",
        "e878931414e46eaaf1e10e227cd50bcf5435dee8"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 13 04:33:39 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 13 04:33:39 2017 +0000"
      },
      "message": "Merge \"Allow multiple standby buckets to be set in one IPC\""
    },
    {
      "commit": "05e90071ecdcb1c1c0d1b2e6f3ae451195636035",
      "tree": "dd520c7e3b047e7f60f91f0175ee2591ba5c3549",
      "parents": [
        "777f745bfe85b001065821c0c4fec4bd0c3b24f5",
        "b6a9f94d6718894fdd382708a9d87696f055e71e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 13 03:05:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 13 03:05:23 2017 +0000"
      },
      "message": "Merge \"Add getDisallowedSystemApps to  DevicePolicyManager\""
    },
    {
      "commit": "5fb929032de14ca78163e1d0c42c34f6fb287da4",
      "tree": "5efce3a17f03238572ddc890a872ea3610be45c7",
      "parents": [
        "403c8f72e38114d0aadfd852b98b323827068e5b"
      ],
      "author": {
        "name": "Jonathan Basseri",
        "email": "misterikkit@google.com",
        "time": "Thu Nov 16 10:58:01 2017 -0800"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Tue Dec 12 13:50:35 2017 -0800"
      },
      "message": "Use consistent naming for allocating SPI.\n\nThroughout the IPsec code (API, system server, netd) we use \"reserve\"\nSPI and \"allocate\" SPI interchangeably. This renames to use \"allocate\"\neverywhere for self-consistency and consistency with the kernel\n(ALLOCSPI).\n\nIn javadoc, I am leaving the word \"reserve\" in several places because it\nis still an accurate description of how the method behaves.\n\nBug: 69128142\nTest: TreeHugger should be enough\nChange-Id: I8ea603b4612303b0393beef04032671fa53d2106\n"
    },
    {
      "commit": "28c660f11ac10c5dfe16fbdc7bb04ee82328e4d4",
      "tree": "73eb379d7f766577bd96ce7ad115ea08753b1bdf",
      "parents": [
        "27674aedc0c2fe6f013ea0d6722bdb0d17fc7c57"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Dec 12 13:51:32 2017 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Dec 12 14:11:14 2017 -0700"
      },
      "message": "API that reports first SDK level of the device.\n\nThis is different from SDK_INT, which can change due to OTA\nsoftware updates.\n\nTest: cts-tradefed run commandAndExit cts-dev -m CtsOsTestCases -t android.os.cts.BuildTest\nBug: 69270887\nChange-Id: Ic3f4b22b25dc08f3fbdbdf7622c953323447ea01\n"
    },
    {
      "commit": "088b8b43871c5d9ccf698912cc8139eb009c1f2a",
      "tree": "2236b0674ada1b7c2ef9b10985a0553dc24d46da",
      "parents": [
        "8ded1cde4a899abef9d79e24fca1351d4fc61e5f"
      ],
      "author": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Mon Dec 04 15:54:37 2017 -0800"
      },
      "committer": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Tue Dec 12 11:31:47 2017 -0800"
      },
      "message": "Deprecate setVoicemailRingtoneUri and setVoicemailVibrationEnabled\n\nDue to notification channel changes in O these settings are no longer\napplicable.\n\nChange-Id: Iaac6fda37bc989e09e7e4b1c20f2434be3feee92\nFixes: 38205149\nTest: Doc change.\n"
    },
    {
      "commit": "b6a9f94d6718894fdd382708a9d87696f055e71e",
      "tree": "0fdd2238f144aa5a85be0a0b24342257d5911fc1",
      "parents": [
        "1f940bf57f71197ae313030d2e66bbb4ec44a1e7"
      ],
      "author": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Tue Nov 07 11:28:56 2017 +0800"
      },
      "committer": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Tue Dec 12 18:47:29 2017 +0000"
      },
      "message": "Add getDisallowedSystemApps to  DevicePolicyManager\n\n- The getDisallowedSystemApps is based on OverlayPacakgesProvider which\n  is moved from ManagedProvisinoing\n- getDisallowedSystemApps will be used by ManagedProvisioning\n- createAndManageUser will now use getDisallowedSystemApps to disable\n  disallowed system apps when creating users\n- LEAVE_ALL_SYSTEM_APPS_ENABLED can be passed to createAndManageUser to\n  enable all system apps\n- ACTION_MANAGED_USER_CREATED will be broadcasted to ManagedProvisioning\n  after managed user is created to take a system app snapshot\n\nBug: 65842187\nTest: OverlayPackagesProviderTest passes\nTest: Disallowed system apps does not appear in device owenr, managed\n      profile, and managed users\nTest: System app snapshot is created after provisinoing device owner,\n      managed profile and managed users\nChange-Id: I86f870f7814b5700cf5539e889fb6998514d110f\n"
    },
    {
      "commit": "a22a7c2f97cd4ae98c5b24837a47a9cd8267736d",
      "tree": "da62fdcdc58c3a7b3b6e85bcb799d0a8d21605d9",
      "parents": [
        "112d859e254f72ffbb2dd0d741d79df1317c1471",
        "8d6e18c879d138b7e9bc3bfdccf85440e98163bd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 12 18:40:04 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 12 18:40:04 2017 +0000"
      },
      "message": "Merge \"Add DevicePolicyManager.isEphemeralUser\""
    },
    {
      "commit": "556ac61c5ffd2ad0cb91afedca8dc18a5f014dfc",
      "tree": "b615c586ad79a6455ac7eb69a9996bd2e082395a",
      "parents": [
        "d8171027f373d919eefc572c296364d47807a89d"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Thu Dec 07 11:02:08 2017 -0800"
      },
      "committer": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Tue Dec 12 10:39:53 2017 -0800"
      },
      "message": "Filter out position jitter in hover tooltip handling\n\nAllow for some jitter when detecting stationary hover in the tooltip\nhandling code. This makes it possible to invoke a tooltip with stylus.\n\nBug: 70173905\nTest: android.view.cts.TooltipTest\nChange-Id: I016e378df5b48fdc45bcc3a4dbe46e3644ecb74a\n"
    },
    {
      "commit": "8ded1cde4a899abef9d79e24fca1351d4fc61e5f",
      "tree": "10fb0a6bf9465b64d5de02f247962673611d4348",
      "parents": [
        "0b30d95dc8670514647c50e6f4bee89370eac2d2",
        "b592e29f28d2afe8c4a2bfcc93654e76c11c8e5b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 12 18:04:10 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 12 18:04:10 2017 +0000"
      },
      "message": "Merge \"Moved data connection response into system api.\""
    },
    {
      "commit": "ec646687c3549a670020ec24fe563d9b418b30a0",
      "tree": "327c49079f68b27cd1ca9d2ddc8871f004d1686c",
      "parents": [
        "b507df45697f36993cf7e853deefed6495a99621",
        "fed72bf1991c7e35279a8c3d26caa7ff6c8bc7a1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 12 16:44:13 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 12 16:44:13 2017 +0000"
      },
      "message": "Merge \"Add Slice.Builder#addBundle\""
    },
    {
      "commit": "b507df45697f36993cf7e853deefed6495a99621",
      "tree": "b9ae89a3805ec1311e6bbf0bf551f9734d7fa8ca",
      "parents": [
        "c824630ccee3bef59b9324a223ca84ba36c1a10e",
        "fbe63bddd6ea751cb1b82f6dfb5e896f4b7a7ef4"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Dec 12 16:40:27 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 12 16:40:27 2017 +0000"
      },
      "message": "Merge \"Introduce PremeasuredText\""
    },
    {
      "commit": "fed72bf1991c7e35279a8c3d26caa7ff6c8bc7a1",
      "tree": "792518091a3277acaa841c52d781037d79e76f51",
      "parents": [
        "4ae4005bde84dc2217f9e792c87ec0065f5a50e1"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Fri Dec 08 18:19:32 2017 -0500"
      },
      "committer": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Tue Dec 12 09:30:28 2017 -0500"
      },
      "message": "Add Slice.Builder#addBundle\n\nIts for support lib expansion in the future, not for dev use.\n\nBug: 68378561\nTest: atest cts/tests/tests/slice\nChange-Id: Ifc73e56c391bd4abed3b8db3c597d7dc794c1a3c\n"
    },
    {
      "commit": "73b6bc86af1b5f278b83ff14365d63929b0553b7",
      "tree": "439329b4bfab3480ce39b29f204acbeed335047d",
      "parents": [
        "1f940bf57f71197ae313030d2e66bbb4ec44a1e7"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Tue Dec 05 11:07:30 2017 +0000"
      },
      "committer": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Tue Dec 12 11:47:12 2017 +0000"
      },
      "message": "Add Build.Version.MIN_SUPPORTED_TARGET_SDK_INT field.\n\nExpose min supported value for app target sdk version.\nCurently set to 0.\n\nTest: make\nBug: 63926630\nChange-Id: I3af54d33da78f74b6fffba4216fd6a2be25475f6\n"
    },
    {
      "commit": "fbe63bddd6ea751cb1b82f6dfb5e896f4b7a7ef4",
      "tree": "346c3fe1de1ee2fccf8d48c66cc666f34f435b60",
      "parents": [
        "0d13717248cf34b4dfee9cd757c33ed7c57338d6"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Sat Dec 02 19:28:05 2017 -0800"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Dec 11 18:55:12 2017 -0800"
      },
      "message": "Introduce PremeasuredText\n\nBy measuring the character widths beforehand, we can save at least 40%\nof the StaticLayout construction time which typically happens on UI\nthread.\nAlso verified this doesn\u0027t cause performance regression for not\npremeasured text.\n\nRaw performance score (Not premeasured -\u003e premeasured, median, N\u003d100)\n\nNo Style,   Greedy, Hyphenation OFF:  7,812,975 -\u003e    503,245 (-93.6%)\nNo Style, Balanced, Hyphenation OFF:  7,843,254 -\u003e    396,892 (-95.0%)\n\nNo Style,   Greedy, Hyphenation ON : 19,134,214 -\u003e 11,658,928 (-39.1%)\nNo Style, Balanced, Hyphenation ON : 19,348,062 -\u003e 11,634,942 (-39.9%)\n\nStyled,     Greedy, Hyphenation OFF: 14,353,673 -\u003e    572,840 (-96.0%)\n\nRaw performance score (w/o patch -\u003e w/ patch, median, N\u003d100):\n\nNo Style,   Greedy, Hyphenation OFF:  7,732,894 -\u003e  7,812,975 (+1.04%)\nNo Style, Balanced, Hyphenation OFF:  7,884,510 -\u003e  7,843,254 (-0.52%)\n\nNo Style,   Greedy, Hyphenation ON : 18,986,958 -\u003e 19,134,214 (+0.78%)\nNo Style, Balanced, Hyphenation ON : 19,232,791 -\u003e 19,348,062 (+0.60%)\n\nStyled,     Greedy, Hyphenation OFF: 14,319,690 -\u003e 14,353,673 (+0.24%)\n\nBug: 67504091\nTest: bit CtsTextTestCases:*\nTest: bit CtsGraphicsTestCases:*\nTest: bit CtsWidgetTestCases:*\nTest: FrameworksCoreTests:android.text.MeasuredTextTest\nChange-Id: I0b46f04b42cc012606a9c722eca0d51147a0dcc7\n"
    },
    {
      "commit": "0afd2d0288fa2642cda96539435dd95b5252046a",
      "tree": "96672df3b548ea6af5cdb261f8c658c9d8d48fd3",
      "parents": [
        "036ffe55d5c451029c80404c7780f1f80efbfad9",
        "6365fde4c051578ce14f9ca7d71faab72fa1215b"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Tue Dec 12 02:46:53 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 12 02:46:53 2017 +0000"
      },
      "message": "Merge \"Add CarrierConfig key for RTT support\" am: e5a913661d am: 79dc6fb815\nam: 6365fde4c0\n\nChange-Id: I652fb64918aaf7dbd87910d35329b2752914e937\n"
    },
    {
      "commit": "79e7ce39e94597be98786119121e0d6a37b840f3",
      "tree": "d301ccbad1299573040a38faf0b2cf7634908d6b",
      "parents": [
        "1a6d229e76b228e476bc23e0a1195e353fe02872"
      ],
      "author": {
        "name": "Mady Mellor",
        "email": "madym@google.com",
        "time": "Mon Nov 27 18:25:32 2017 -0800"
      },
      "committer": {
        "name": "Mady Mellor",
        "email": "madym@google.com",
        "time": "Mon Dec 11 18:27:31 2017 -0800"
      },
      "message": "Add hints for toggles in Slice\n\nTest: Manual, build a slice with a toggle needs the support lib CL to\n      present the toggle\nBug: 68378574\nChange-Id: I3067cfee49be17c2688de6d4ce9569e490280705\n"
    },
    {
      "commit": "39bf43519dc13302cb78aea1e6907542e3337177",
      "tree": "db68cf5480f6188956a0205e9788b9ffa0a95e8b",
      "parents": [
        "6cca6d503a41dfe92e030c99e7027cf0f8f60654"
      ],
      "author": {
        "name": "Mady Mellor",
        "email": "madym@google.com",
        "time": "Mon Dec 11 16:52:18 2017 -0800"
      },
      "committer": {
        "name": "Mady Mellor",
        "email": "madym@google.com",
        "time": "Mon Dec 11 17:42:09 2017 -0800"
      },
      "message": "Adds hint summary to slice\n\nTest: manual -- in support lib with slice demo app, add a summary\n      note that it appears when slice is in small format and doesn\u0027t\n      appear when slice is in large format\nBug: 68378574\nChange-Id: Id96e5597311189b0352e1763c678ccf7079d2db1\n"
    },
    {
      "commit": "4c2009c236962615c83d6c79f71532e9af2ca403",
      "tree": "c21ffff71caf127ff7a81a5d61beb02e76852999",
      "parents": [
        "89f52d7a6a7acc1e8acc529ccb98d060949b6bd7",
        "8f5733897abc2e375a14f2be7fa3cd3a481eba4d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 12 01:30:03 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 12 01:30:03 2017 +0000"
      },
      "message": "Merge \"Make TelephonyManager#getEmergencyCallbackMode SystemApi\""
    },
    {
      "commit": "a59a5eb71b6d49494e6307fb4342d4024174f5c7",
      "tree": "75cc31421f87e75ff2fc2f30d2ba6d963e45a16d",
      "parents": [
        "89f52d7a6a7acc1e8acc529ccb98d060949b6bd7"
      ],
      "author": {
        "name": "Jordan Liu",
        "email": "jminjie@google.com",
        "time": "Mon Dec 11 16:23:25 2017 -0800"
      },
      "committer": {
        "name": "Jordan Liu",
        "email": "jminjie@google.com",
        "time": "Mon Dec 11 17:26:51 2017 -0800"
      },
      "message": "Unhide signal strength carrier config\n\nAlso flip the usage to match the precedent set by other similar carrier\nconfigs.\n\nBug: 69730732\nTest: manual and new unit test\nChange-Id: Ic7b8f5fabcdefb7b7925bf2dab4840c2ec26bdff\n"
    },
    {
      "commit": "47ed62080fcf8db93e866b6dd9b5361bc27881fc",
      "tree": "975a289f24ecb057aa9b573eaf47c9341b3e591a",
      "parents": [
        "403c8f72e38114d0aadfd852b98b323827068e5b"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Mon Nov 20 16:25:39 2017 -0800"
      },
      "committer": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Mon Dec 11 14:41:31 2017 -0800"
      },
      "message": "Add CarrierConfig key for RTT support\n\nAdd the carrier config key.\n\nTest: add fake support for some random carrier, look for the capability\nBug: 63934808\nChange-Id: I8a0e33a7ac10fbdcad356059913e7ddcba26bb6c\n"
    },
    {
      "commit": "8c919fd93cc35db80d77a68092458e1405ba8ccf",
      "tree": "151d6cc6a99a5647edd81c01d96bf53831baa494",
      "parents": [
        "f413d90f0db3838659e7461c50e1da8907ac2d11",
        "5343fcb77df55d01655c9f7bad074c9c7b75ea72"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 11 22:21:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 11 22:21:12 2017 +0000"
      },
      "message": "Merge \"Introduce API to enable existing packages on shared users\""
    },
    {
      "commit": "fff6f59a63304be50e7a251fb4fca38ae0090fc4",
      "tree": "dc913a1c3fa1e579320bab0b1f3d3938d14e832b",
      "parents": [
        "72671a1864a88c68354622f469fb863f0ef1de18"
      ],
      "author": {
        "name": "fionaxu",
        "email": "fionaxu@google.com",
        "time": "Mon Nov 27 22:53:42 2017 -0800"
      },
      "committer": {
        "name": "fionaxu",
        "email": "fionaxu@google.com",
        "time": "Mon Dec 11 11:45:13 2017 -0800"
      },
      "message": "new carrier id APIs\n\n1. New telephony APIs to getCurrentCarrierId\nand getCurrentCarrierName\n2. New broadcast intent to notify carrier id changed\n\nBug: 64131637\nTest: Build\nChange-Id: I9a240ba7df313ad701f98bb3982f29c3d5317da8\n"
    },
    {
      "commit": "740a650dacb950823d0b4b0d1c8c29f0721fc86d",
      "tree": "81c322efe78e10151b75d2db9f4b7e550948dc3d",
      "parents": [
        "454c831d1d66e19eb282d0f99c7a682db4a9ae9d"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Sun Dec 10 13:49:59 2017 -0500"
      },
      "committer": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Mon Dec 11 14:44:00 2017 -0500"
      },
      "message": "Change colors to allow transport of more generic ints\n\nThis is in preparation for sliders, also add some hints/types that\nwill be used for sliders.\n\nTest: atest cts/tests/tests/slice\nBug: 68378584\nChange-Id: I8f6a8bb7c80854b51c421a437318975f517a2169\n"
    },
    {
      "commit": "5343fcb77df55d01655c9f7bad074c9c7b75ea72",
      "tree": "d9c69f2e19cdc956efd161c0111eab8559d624c0",
      "parents": [
        "0b62766d27da6867cc6d00347cd81427a6ec9e86"
      ],
      "author": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Tue Dec 05 16:49:19 2017 +0000"
      },
      "committer": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Mon Dec 11 14:13:00 2017 +0000"
      },
      "message": "Introduce API to enable existing packages on shared users\n\n- Also unhide setKeepUninstalledPackages\n- installExistingPackage accpets delegation API because all app\n  managemnet PIs did the same, including setKeepUninstalledPackages and\n  enableSytemApp\n\nBug: 70017947\nBug: 65842106\nTest: Install apps already installed in u0 in shared user should succeed\nTest: Install apps in setKeepUninstalledPackages cache in shared user\n      should succeed\nTest: Install apps via delegated package should succeed\nTest: Install apps via unaffiliated profile owner should fail\nTest: Install apps not installed in any user or in APK cache shoudl fail\nChange-Id: Iba563b2050abd0d1f46bfa06cfc0526b7b476b3b\n"
    },
    {
      "commit": "8d6e18c879d138b7e9bc3bfdccf85440e98163bd",
      "tree": "1db224f1479061ee1577a3f79419756d0ed12d90",
      "parents": [
        "0b62766d27da6867cc6d00347cd81427a6ec9e86"
      ],
      "author": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Fri Dec 08 18:11:27 2017 +0000"
      },
      "committer": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Mon Dec 11 13:44:00 2017 +0000"
      },
      "message": "Add DevicePolicyManager.isEphemeralUser\n\nBug: 67580550\nTest: The AP returns false in primary user.\nTest: Create ephemeral user with createAndManageUser, ensure the API return true.\nChange-Id: I1e670ca8a8c6171ddb94a1e4b1cb1a958f12919d\n"
    },
    {
      "commit": "0b62766d27da6867cc6d00347cd81427a6ec9e86",
      "tree": "9dd4e46904f18228cd24ab7738ebe51b5d8f706a",
      "parents": [
        "92beccfe584ad743e05bc50ebad73187a21d016d",
        "d795827c31a7a8d10fd512476f058e4ac6846ced"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 11 06:35:31 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 11 06:35:31 2017 +0000"
      },
      "message": "Merge \"API Review: Drop \"Button\" in is/setLogoutEnabled method\""
    },
    {
      "commit": "e878931414e46eaaf1e10e227cd50bcf5435dee8",
      "tree": "4777c6da7c5cee534f688c07b48dc52eb906e6d6",
      "parents": [
        "b8f2728a787db8dc551345b464705f049d970502"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Sun Dec 10 14:34:26 2017 -0800"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Sun Dec 10 18:52:20 2017 -0800"
      },
      "message": "Allow multiple standby buckets to be set in one IPC\n\nSystemApi to pass a map of packagename to bucket mapping.\nReduces the number of IPC calls to be made by bucketing\nML app.\n\nBug: 63527785\nTest: atest CtsAppUsageHostTestCases\nChange-Id: I4172fd30cc310092a1f182ae26267de9148009b7\n"
    },
    {
      "commit": "521fa713bd970d7e3a55cdf61ca502271a744642",
      "tree": "812ab01652376b48769de2004a92b17b0ea3fb1d",
      "parents": [
        "21ce73641423f34db6199648c1e46e203f2f9712",
        "d8d03a8e1b5b7f4b05d7f99a19d356ffd95edb58"
      ],
      "author": {
        "name": "Tarandeep Singh",
        "email": "tarandeep@google.com",
        "time": "Sat Dec 09 01:35:04 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 09 01:35:04 2017 +0000"
      },
      "message": "Merge \"Move IME related API methods from IMM to IMS.\""
    },
    {
      "commit": "21ce73641423f34db6199648c1e46e203f2f9712",
      "tree": "2d4bd6d608c0ad85ef84fb8924b8ffff5c4d86cd",
      "parents": [
        "dcd233bd5146de664b5738875432debc9884cfb3",
        "2f24f039c38e3f83fe9f7d8a68ae096e6df6ccaa"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Dec 09 01:10:58 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 09 01:10:58 2017 +0000"
      },
      "message": "Merge \"PROTECTION_FLAG_VENDOR_PRIVILEGED as @TestApi\""
    },
    {
      "commit": "b592e29f28d2afe8c4a2bfcc93654e76c11c8e5b",
      "tree": "8b636ae2d264f7b4055cfb31af521f2aec14e0b0",
      "parents": [
        "e7120f505651500098eae89b5816b724106c248d"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Thu Nov 30 14:03:58 2017 -0800"
      },
      "committer": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Fri Dec 08 13:28:07 2017 -0800"
      },
      "message": "Moved data connection response into system api.\n\nThis is a preliminary step for IWLAN refactoring, where data response\nwill be one of the parameter in data service callback.\n\nTest: Telephony sanity tests\nbug: 64132030\nMerged-In: I7eb5318cd75ca3b7a29d5bf0da18d6b29a228ee1\nChange-Id: I7eb5318cd75ca3b7a29d5bf0da18d6b29a228ee1\n(cherry picked from commit e44609b15866d080e0f8813b99d04b51a6f32929)\n"
    },
    {
      "commit": "d8d03a8e1b5b7f4b05d7f99a19d356ffd95edb58",
      "tree": "5e6ada200a551726394fa15138c6e588498779d9",
      "parents": [
        "0fd3565630af1bdb95eed411c44937b8a80265df"
      ],
      "author": {
        "name": "Tarandeep Singh",
        "email": "tarandeep@google.com",
        "time": "Tue Nov 28 13:35:32 2017 -0800"
      },
      "committer": {
        "name": "Tarandeep Singh",
        "email": "tarandeep@google.com",
        "time": "Fri Dec 08 10:40:38 2017 -0800"
      },
      "message": "Move IME related API methods from IMM to IMS.\n\nInputMethodManager is public InputMethod API for apps. The methods\nthat take Window-token as parameter are restricted to system\nand/or IME developers. Such methods should really live\nin InputMethodService.\nThis CL deprecates such methods in IMM and moves them to IMS.\n\nThis is the first step towards simplifying IME APIs.\n\nBug: 70282603\nTest: atest InputMethodManagerTest\nChange-Id: I3163f3cbe557c85103ca287bee0874a3b4194032\n"
    },
    {
      "commit": "d795827c31a7a8d10fd512476f058e4ac6846ced",
      "tree": "037e843dba25ad616d04b9eff0d96b4fbfe11f8a",
      "parents": [
        "a044c1d27e9380d649b6b9dadfb582136be5fa79"
      ],
      "author": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Fri Dec 08 11:30:52 2017 +0000"
      },
      "committer": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Fri Dec 08 11:32:23 2017 +0000"
      },
      "message": "API Review: Drop \"Button\" in is/setLogoutEnabled method\n\nBug: 70336452\nTest: Logout button can still be controlled\n\nChange-Id: I2ac24c4dec1ce90a77037a6415b4a6f77e959965\n"
    },
    {
      "commit": "2f24f039c38e3f83fe9f7d8a68ae096e6df6ccaa",
      "tree": "11c4954647da9b2000ba1065f128d28bf0a52e2e",
      "parents": [
        "2d7a196edcd2fae9b7807f9a04b7033a04a88b0f"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Dec 08 12:25:25 2017 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Dec 08 12:25:25 2017 +0900"
      },
      "message": "PROTECTION_FLAG_VENDOR_PRIVILEGED as @TestApi\n\nThe flag is used in CTS.\n\nBug: 70332172\nTest: cts-tradefed run commandAndExit cts-dev -m CtsPermission2TestCases\n-t\nandroid.permission2.cts.PermissionPolicyTest#testPlatformPermissionPolicyUnaltered\n\nChange-Id: Iba4ce1475991249980cc6a403037f4dd7bf722e5\n"
    },
    {
      "commit": "f4ef6eb5f5da1e052598a1c21eeaa8e23fbd4ca8",
      "tree": "55b7ccf01d05d2023c657f3d6eea4090258cb004",
      "parents": [
        "eb370876bb8b7846dab7e3afba1dff3ae5ddac27"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Dec 07 13:57:21 2017 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Dec 07 16:32:06 2017 -0800"
      },
      "message": "Changes need to implement heavy-weight gaming app tests.\n\nWe need to expose the CANT_SAVE_STATE importance for CTS to use.\n\nI also found a serious issue with how instrumentation ApplicationInfo\nis set up, where it doesn\u0027t have lots of important stuff like the\ntargetSdkVersion!  This is now fixed...  though ghod knows how this\nwill impact existing CTS tests, there could certainly be stuff relying\non code thinking it is running as targetSdk 0. :(\n\nFinally delete the CantSaveState tests here, they are going to CTS.\n\nBug: 63937884\nTest: ran new CTS tests\nChange-Id: I42a73e0e83d799f8e5ff8ac4d4704a74ab5aab3e\n"
    },
    {
      "commit": "7c95a682ba064c611a13cc94fa1ccea397d776a9",
      "tree": "7e63665be73e8c1e0beec827b2127ed3095ebb04",
      "parents": [
        "ad6c1ed8bcec41cfb16f33ed6436b9e94b2288fb",
        "bc02b774632e0dfbe71ccb26535e04e485f611e6"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Thu Dec 07 21:32:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 07 21:32:29 2017 +0000"
      },
      "message": "Merge \"New supported QuickViewConstant feature to delete a file.\""
    },
    {
      "commit": "c7efe16191836ebd376306d1aa093cfd29ebb3fd",
      "tree": "782a9ded1bb93846e82377900ef3ac536e7d4111",
      "parents": [
        "a232b53975cce6ed3f74864070076dc389967577",
        "e44609b15866d080e0f8813b99d04b51a6f32929"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Thu Dec 07 19:01:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 07 19:01:29 2017 +0000"
      },
      "message": "Merge \"Moved data connection response into system api.\""
    },
    {
      "commit": "b2795710f33ce03f4106b4bbd3b41faec0c31bad",
      "tree": "020ae2fc5a5d7770f6868df4947dbd9036bffc72",
      "parents": [
        "f20ed0321032d70d715eb1ccdde338689a30c7f1",
        "852c8f121f2e502e1e8503bfc230dccb81b681d4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 07 18:20:45 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 07 18:20:45 2017 +0000"
      },
      "message": "Merge \"DevicePolicyManager: Add key generation functionality.\""
    },
    {
      "commit": "734afbe61e3a7180649aebe4a89fb9e21dd668ae",
      "tree": "902857bb32749c27151992aeadc1453ba02bbd42",
      "parents": [
        "6cca6d503a41dfe92e030c99e7027cf0f8f60654",
        "329d04097e1db9b6f801972d94f56c5b56c09e8a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 07 17:35:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 07 17:35:23 2017 +0000"
      },
      "message": "Merge \"Moar changes for Autofill Field Classification mechanism:\""
    },
    {
      "commit": "852c8f121f2e502e1e8503bfc230dccb81b681d4",
      "tree": "27c90a754791b77990afbcb369cac3fad401a3bf",
      "parents": [
        "d52efa56adaca0bc70fb72082c7c663adcb669cc"
      ],
      "author": {
        "name": "Eran Messeri",
        "email": "eranm@google.com",
        "time": "Wed Nov 15 05:55:52 2017 +0000"
      },
      "committer": {
        "name": "Eran Messeri",
        "email": "eranm@google.com",
        "time": "Thu Dec 07 15:12:30 2017 +0000"
      },
      "message": "DevicePolicyManager: Add key generation functionality.\n\nThis is the crux of the Verified Access feature implementation:\nAdding the ability to generate KeyChain keys directly by the\nsecure hardware, rather than installing software-generated keys\ninto KeyChain.\n\nAdd generateKeyPair to the DevicePolicyManager, which delegates key\ngeneration (via the DevicePolicyManagerService) to the KeyChainService.\n\nDesign highlights:\n* The key generation is delegated via the DevicePolicyManagerService to\n  check that only authorized callers request key generation in KeyChain.\n* KeyChainService performs the actual key generation so it owns the key\n  in Keystore outright.\n* DevicePolicyManagerService then grants the calling app access to the\n  Keystore key, so it can actually be used.\n* Loading the public/private key pair, as well as attestation\n  certificate chain, is done in the client code (DevicePolicyManager)\n  to save parceling / unparceling those objects across process\n  boundaries twice (for no good reason).\n\nNOTE: The key attestation functionality (that includes Device ID) is\nmissing/untested. Will be added in a follow-up CL as this one is quite\nbig already.\n\nHIGHLIGHT FOR REVIEWERS:\n* API: New API in DevicePolicyManager.\n\nBug: 63388672\nTest: cts-tradefed run commandAndExit cts-dev -a armeabi-v7a -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.DeviceOwnerTest#testKeyManagement -l DEBUG; adb shell am instrument \u0027android.security.tests/android.support.test.runner.AndroidJUnitRunner\u0027 (After building the KeystoreTests target and installing the apk)\nChange-Id: I73762c9123f32a94d454ba4f8b533883b55c44cc\n"
    },
    {
      "commit": "e44609b15866d080e0f8813b99d04b51a6f32929",
      "tree": "0f3dbc4c20f1ef7401c1cd376e375abcd92a0b3e",
      "parents": [
        "57bd0a9186dcd99c8b6d335c7cbc37568d19cbd0"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Thu Nov 30 14:03:58 2017 -0800"
      },
      "committer": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Thu Dec 07 00:27:17 2017 -0800"
      },
      "message": "Moved data connection response into system api.\n\nThis is a preliminary step for IWLAN refactoring, where data response\nwill be one of the parameter in data service callback.\n\nTest: Telephony sanity tests\nbug: 64132030\nChange-Id: I7eb5318cd75ca3b7a29d5bf0da18d6b29a228ee1\n"
    },
    {
      "commit": "2337aec921d051da0d6b506e5fbb564ea2e49911",
      "tree": "45312f63da4f26b64dc1e432fa31d74f6745c93e",
      "parents": [
        "bc4f48b21d4f78a81a78a120a59e523369e41e7b"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Dec 06 21:12:23 2017 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Dec 07 00:22:25 2017 -0700"
      },
      "message": "Deeper sanity checking of emitted types.\n\nWhen emitting a method or field, verify that we\u0027re able to reference\nall mentioned types.  This ensures that we don\u0027t accidentally\nreference undefined classes/interfaces.\n\nTest: manual inspection of API files\nBug: 69791141\nChange-Id: I84e0c87fe83daa118661f61dbdf17b58ea5282d4\nMerged-In: I84e0c87fe83daa118661f61dbdf17b58ea5282d4\n"
    },
    {
      "commit": "bc4f48b21d4f78a81a78a120a59e523369e41e7b",
      "tree": "2a4d62b613e1c08543eb31aa422c5871045da2f5",
      "parents": [
        "983df8cc6cd450c6e30881aa6a1b429ebe09d383"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Dec 06 21:02:11 2017 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Dec 06 21:56:12 2017 -0700"
      },
      "message": "Emit all APIs using Predicates.\n\nGenerate APIs using updated doclava.\n\nTest: manual inspection of API text files\nBug: 69505783\nChange-Id: I2efd22998a64ebb57588b073c4a591242f4aef91\nMerged-In: I2efd22998a64ebb57588b073c4a591242f4aef91\n"
    },
    {
      "commit": "a8b9e2a5454ca35c43ee8ece0d5e10ad8017714e",
      "tree": "dab5b8144a5e9dae1d6fee691d9ef5355255b245",
      "parents": [
        "081be42c272018d32af05808f176d455785ab64c",
        "5672defaa6885bf1ac974fc48fde448ed2d047f1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 06 23:03:17 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 06 23:03:17 2017 +0000"
      },
      "message": "Merge changes from topics \"moar_fields\", \"fc_refactor_score\"\n\n* changes:\n  Implemented autofill field classification on multiple fields and user data.\n  Refactored the FieldsClassification score mechanism.\n"
    },
    {
      "commit": "081be42c272018d32af05808f176d455785ab64c",
      "tree": "db4e871ee337c284e082ca575e3f023196dcc517",
      "parents": [
        "6842a8c66f4458d2da92c75da056287fa3931637",
        "8246513dfc5556a76e7db8732d2213919cd27748"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 06 22:56:17 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 06 22:56:17 2017 +0000"
      },
      "message": "Merge \"Introduce getProfileSwitchingIcon/Label In CrossProfileApps\""
    },
    {
      "commit": "dac644cd4ab97987ace0d3f5f3d1a8da7a8dd01a",
      "tree": "deebfc65a21d0ab123fcc21b6bd42df1e1f1cb79",
      "parents": [
        "787a43b293026e688d5d0580cb0fb54831269f47",
        "5f13cf0586c6edd7eaa5aa676a19df150870a81e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 06 22:27:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 06 22:27:51 2017 +0000"
      },
      "message": "Merge \"Deprecate inKeyguardRestrictedInputMode\""
    },
    {
      "commit": "329d04097e1db9b6f801972d94f56c5b56c09e8a",
      "tree": "d674ac7e7f1c1b240b8d9ca92c9f1929223c3208",
      "parents": [
        "5672defaa6885bf1ac974fc48fde448ed2d047f1"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Dec 06 09:22:43 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Dec 06 13:14:15 2017 -0800"
      },
      "message": "Moar changes for Autofill Field Classification mechanism:\n\n- Changed max score to float (range 0.0 - 1.0).\n- Replaced getTopMatch() to getMatches().\n- Created a Scorer interface with a default edit-distance implementation.\n- Added a isFieldClassificationEnabled() method.\n\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationTest\nTest: atest CtsAutoFillServiceTestCases:EditDistanceScorerTest\nTest: atest CtsAutoFillServiceTestCases:UserDataTest\nTest: atest FrameworksCoreTests:SettingsBackupTest\n\nBug: 68045531\n\nChange-Id: Ice6cbf548053b86b47980d9664a3a21219c0ff08\n"
    },
    {
      "commit": "bb6bfea6801cff5b50c990bdcfbd2df93ddf9023",
      "tree": "7ac959bd6d2a4d336a6348f56a17694586fa4788",
      "parents": [
        "a044c1d27e9380d649b6b9dadfb582136be5fa79"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 04 11:22:25 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Dec 06 11:20:10 2017 -0800"
      },
      "message": "Refactored the FieldsClassification score mechanism.\n\nBefore, FillEvent.getFieldsClassification() returned a map of remote ids and\nscores. Now, it returns a Map of FieldClassication by AutofillId, which allows\nmultiple fields and scores for multiple user datas (although the initial\nimplementation supports only the top match for a field).\n\nThis is mostly a refactoring CL, as the implementation is still saving just one\nuser data entry and one field. But full support is coming next...\n\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationTest\nTest: atest CtsAutoFillServiceTestCases:UserDataTest\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationScorerTest\n\nBug: 68045531\n\nChange-Id: I08b29f24efbd527216f9bce2343e1bcd4b4554c0\n"
    },
    {
      "commit": "a044c1d27e9380d649b6b9dadfb582136be5fa79",
      "tree": "c33b4f6fdc1e716f892f0137a61cc37b1f79677d",
      "parents": [
        "0e86a24986b7fd386add526ea29d7d8fec6207c7",
        "af9bb8d99ed48a4070827060c9208e7bbbc54b3f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 06 19:10:34 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 06 19:10:34 2017 +0000"
      },
      "message": "Merge \"Introduce more user management APIs\""
    },
    {
      "commit": "7f16a8d17ddd5bfc40d1b76ac9427f8eb8df2557",
      "tree": "9126aaf01ed2b33c3cf31b974463e2fff6d5447f",
      "parents": [
        "f10f83d5071ae74f38d4dec19500b53ac177e8bf",
        "731c1a38c07cbd7d0a1de0e7afdd4463ba5ba77e"
      ],
      "author": {
        "name": "Pengquan Meng",
        "email": "mpq@google.com",
        "time": "Wed Dec 06 18:53:10 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 06 18:53:10 2017 +0000"
      },
      "message": "Merge \"Add connection serivce focus api interface\""
    },
    {
      "commit": "f10f83d5071ae74f38d4dec19500b53ac177e8bf",
      "tree": "9af20ad5e3c38dcdca7c2e374714c58ae73cac65",
      "parents": [
        "f77f4f135b978a54ee93d3192f03d28bef736cea",
        "5d73b6d7a9e07d876ce35484c1b82f96407cf77a"
      ],
      "author": {
        "name": "Chris Tate",
        "email": "ctate@android.com",
        "time": "Wed Dec 06 18:47:17 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 06 18:47:17 2017 +0000"
      },
      "message": "Merge \"Introduce ServiceConnection#onNullBinding()\""
    },
    {
      "commit": "839edb1781264eb268711075add1e4e31a18caed",
      "tree": "ef7b351e2c292d5f4232281710578f124a8965be",
      "parents": [
        "6798bc300e311c633c90ff67ccff09f7bb679c21",
        "f5e0fd78fd0165e7bf69dff32fec5467b001ea7c"
      ],
      "author": {
        "name": "Sunny Goyal",
        "email": "sunnygoyal@google.com",
        "time": "Wed Dec 06 18:25:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 06 18:25:32 2017 +0000"
      },
      "message": "Merge \"Adding widgetFeatures so that a provider can indicate a set of supported features\""
    },
    {
      "commit": "9e33289902f160fd91d2952632f5407f3e33284a",
      "tree": "9ee02c644bc819bc3f323c8cd196ffd6c9eb5977",
      "parents": [
        "347a6f8862901fa93a543eab77dd9d743c9eed07",
        "709ee1551db935adb2026fae9dd799e60f784499"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 06 18:05:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 06 18:05:32 2017 +0000"
      },
      "message": "Merge \"Adds metadata to InstantAppResolveInfo\""
    },
    {
      "commit": "bc02b774632e0dfbe71ccb26535e04e485f611e6",
      "tree": "ef397886b673405afa9c20000f03308cb9b72599",
      "parents": [
        "2e24967956fcedc2d25eb4069c89fa7629d4b35f"
      ],
      "author": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Wed Dec 06 11:24:15 2017 -0500"
      },
      "committer": {
        "name": "Geoffrey Pitsch",
        "email": "gpitsch@google.com",
        "time": "Wed Dec 06 12:48:29 2017 -0500"
      },
      "message": "New supported QuickViewConstant feature to delete a file.\n\nBug: 65368139\nTest: compiles\nChange-Id: I45e31f9ee063a9bd1330b3031bc770f7f0bf312e\n"
    },
    {
      "commit": "57a69f683c2ba455336c3cc2df9097a675f473b4",
      "tree": "a5280520deeedda82ce02826a22055c283cb7696",
      "parents": [
        "a084819342ceb696bfbef3387e565744dae31c2a",
        "d4128ec0df2d40d46b4fa0ff6edae393f3bf67b9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 06 16:48:16 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 06 16:48:16 2017 +0000"
      },
      "message": "Merge \"Revert \"Don\u0027t generate irrelevant a11y events - framework\"\""
    },
    {
      "commit": "709ee1551db935adb2026fae9dd799e60f784499",
      "tree": "ef1c9ee8a30d07335de78e085dfd47d9cc98170f",
      "parents": [
        "1523386d85517ce655ff5c4ffb30c70c27bc3fc6"
      ],
      "author": {
        "name": "Patrick Baumann",
        "email": "patb@google.com",
        "time": "Mon Dec 04 16:12:52 2017 -0800"
      },
      "committer": {
        "name": "Patrick Baumann",
        "email": "patb@google.com",
        "time": "Wed Dec 06 15:38:59 2017 +0000"
      },
      "message": "Adds metadata to InstantAppResolveInfo\n\nThis change introduces a metadata Bundle to the InstantAppResolveInfo\ntype to be passed along to the Instant App installer in the case of\nresolution. This can be used by the resolver and installer to improve\nlaunch by avoiding IPC to fetch needed data that lives in the resolver.\n\nChange-Id: I0b9c168dd8803f5398d222384ebd436c787e1a48\nFixes: 68223794\nTest: manual - modified resolver to populate data, verified in installer\n"
    },
    {
      "commit": "af9bb8d99ed48a4070827060c9208e7bbbc54b3f",
      "tree": "68c184a0b0fd0fdcc5a3b9e5da6c0ada1f65d4b3",
      "parents": [
        "7742160e39096d5f94c22992d404170931f72854"
      ],
      "author": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Wed Dec 06 14:38:25 2017 +0000"
      },
      "committer": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Wed Dec 06 14:38:25 2017 +0000"
      },
      "message": "Introduce more user management APIs\n\n- boolean stopUser(ComponentName admin, UserHandle userHandle)\n- boolean logoutUser(ComponentName admin)\n- List\u003cUserHandle\u003e getManageableUsers(ComponentName admin)\n- Introduced Injector.binderWithCleanCallingIdentity\n\nBug: 67580550\nTest: manually try each added API with a DPC on both primary and non-prijmray user.\nTest: CTS tracked in b/67581357\nChange-Id: I9789b9b29978d47bc22be6ecad6c5577e0f8eb5b\n"
    },
    {
      "commit": "f5e0fd78fd0165e7bf69dff32fec5467b001ea7c",
      "tree": "70f05885715e5d66aa438f0a28f8d0a2a6204a26",
      "parents": [
        "fc9696e489b03f3ab91a01b89d0cd106bc84dd8f"
      ],
      "author": {
        "name": "Sunny Goyal",
        "email": "sunnygoyal@google.com",
        "time": "Fri Oct 20 15:07:07 2017 -0700"
      },
      "committer": {
        "name": "Sunny Goyal",
        "email": "sunnygoyal@google.com",
        "time": "Tue Dec 05 16:23:46 2017 -0800"
      },
      "message": "Adding widgetFeatures so that a provider can indicate a set of\nsupported features\n\nBug: 63931362\nBug: 36537581\nTest: Added CTS for new APIs\nChange-Id: I2bd3278bfdf40d88fc8e6f72bfbc7505c64accff\n"
    },
    {
      "commit": "fc9696e489b03f3ab91a01b89d0cd106bc84dd8f",
      "tree": "5b0c72b3914062db63275f571a94b776ad51f064",
      "parents": [
        "c3e9e8ae133d996ce44df6f53ff4e79772efe647",
        "12981ff2d8a554a1d5b6a1d80d5ebe2797344bd5"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue Dec 05 23:58:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 05 23:58:32 2017 +0000"
      },
      "message": "Merge \"Expose the MacAddress class in the api\""
    },
    {
      "commit": "c3e9e8ae133d996ce44df6f53ff4e79772efe647",
      "tree": "d53f982b3a6db1d6135cf3a6bd6519571ec05a7d",
      "parents": [
        "15e7c31f9b32bf3f0b8c4f38bf9febb883a43039",
        "b360b995c91c2abdac7426ba37b154d15b235113"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 05 23:51:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 05 23:51:48 2017 +0000"
      },
      "message": "Merge \"Add new SystemApi InputMethod attr isVrOnly.\""
    },
    {
      "commit": "1f272d89e3cf850965fc0db30f1ae3614a1892b9",
      "tree": "2002bfc0ccfefec793a43e806195253aabaf9f32",
      "parents": [
        "864599ee0221f0ddeda241d6556f8e606359c601",
        "e8d86eb87b4d252ebb2786b88c21c0d9fefec263"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Tue Dec 05 22:19:39 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 05 22:19:39 2017 +0000"
      },
      "message": "Merge \"camera: Add AF scene change key\""
    },
    {
      "commit": "b360b995c91c2abdac7426ba37b154d15b235113",
      "tree": "95b02729275fa8bf422650081d2800839e7051fa",
      "parents": [
        "1523386d85517ce655ff5c4ffb30c70c27bc3fc6"
      ],
      "author": {
        "name": "Tarandeep Singh",
        "email": "tarandeep@google.com",
        "time": "Tue Nov 21 14:25:34 2017 -0800"
      },
      "committer": {
        "name": "Tarandeep Singh",
        "email": "tarandeep@google.com",
        "time": "Tue Dec 05 13:37:14 2017 -0800"
      },
      "message": "Add new SystemApi InputMethod attr isVrOnly.\n\nIn order to support VR-only InputMethod, new attribute \u0027isVrOnly\u0027 is\nadded.\n\nBug: 63037786\nTest: atest InputMethodInfoTest\nChange-Id: Iab936df9972212f56277ef9c18d9e1f67f92a913\n"
    },
    {
      "commit": "d4128ec0df2d40d46b4fa0ff6edae393f3bf67b9",
      "tree": "4c3f0557fba69753a06e5592a2c685ed86ec9666",
      "parents": [
        "8ddfb4794f128ad6ac10fed72c73fdec61ea7bcb"
      ],
      "author": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Mon Dec 04 19:48:41 2017 +0000"
      },
      "committer": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Tue Dec 05 13:08:51 2017 -0800"
      },
      "message": "Revert \"Don\u0027t generate irrelevant a11y events - framework\"\n\nThis reverts commit 8ddfb4794f128ad6ac10fed72c73fdec61ea7bcb.\n\nTest: presubmit\nBug: 69975306\nChange-Id: I05cb545eb0adc77298dddf2dea2997ef36b58a5f\n"
    },
    {
      "commit": "1beccb0fc230d9e2030ad951d483fb0026ea2d49",
      "tree": "64efd3158c950e35823ea99990643cb3ba32c5e8",
      "parents": [
        "d5b9266f013f917dc314bb2151164a5a752fa548",
        "044588599c97ceff70d74a133c9eb01a028db00c"
      ],
      "author": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Tue Dec 05 20:16:24 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 05 20:16:24 2017 +0000"
      },
      "message": "Merge \"Introduce logout button and DevicePolicyManager API to enable it\""
    }
  ],
  "next": "d5b9266f013f917dc314bb2151164a5a752fa548"
}
