)]}'
{
  "log": [
    {
      "commit": "5bc14af5fa7f62dabcd882cb894160ef4ddcbf87",
      "tree": "4e5dd071fcb4f9b77e120f69702ced9149493b81",
      "parents": [
        "6d5aea8811af3e87c3c3fead609cbb8d50c38df7"
      ],
      "author": {
        "name": "Torne (Richard Coles)",
        "email": "torne@google.com",
        "time": "Tue Sep 19 15:21:29 2017 -0400"
      },
      "committer": {
        "name": "Torne (Richard Coles)",
        "email": "torne@google.com",
        "time": "Tue Feb 20 15:41:12 2018 -0500"
      },
      "message": "Consider shared libs when precreating WebView classloader.\n\nThe change to handling of the deprecated Apache HTTP library means that\nthe WebView implementation package might have a non-empty shared library\nlist. Make sure to fetch shared libraries when querying WebView\nimplementations, and take them into account when constructing both the\nactual classpath to be used to precreate the classloader, and when\ndeciding what the cache key for the precreated classloader should be.\n\nChange-Id: I5e1409358d935e1c9f325db434bc6d4ef8ead759\nMerged-In: I5e1409358d935e1c9f325db434bc6d4ef8ead759\nFixes: 65574359\nTest: launch anything that uses WebView\n(cherry picked from commit 4fd8aa51e4de5a7c93841571e30ff10077d1b125)\n"
    },
    {
      "commit": "6d5aea8811af3e87c3c3fead609cbb8d50c38df7",
      "tree": "771b4f3ef15a20f97b427489da5a4b93ee2b4ff3",
      "parents": [
        "0ea144f4bf510a5f41e40b80b23a5a6e531750a0",
        "63dd81390dcae5b59c6a490b803e67721804b80a"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Tue Feb 20 19:17:23 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 20 19:17:23 2018 +0000"
      },
      "message": "Merge \"Fix ConnectivityServiceTest for NATT Keepalive\""
    },
    {
      "commit": "0ea144f4bf510a5f41e40b80b23a5a6e531750a0",
      "tree": "7b1b60aee6776f52abd3bbf46617c3408ddce317",
      "parents": [
        "b23150ffa95bc1ba23f3e02a99c0c3b1c00a2cb5",
        "cb581cb536f1cbfd8ba00b2c92f594173ddb0305"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Feb 20 19:12:38 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 20 19:12:38 2018 +0000"
      },
      "message": "Merge \"Pass DEXOPT_INSTALL_WITH_DEX_METADATA_FILE for first boot\""
    },
    {
      "commit": "b23150ffa95bc1ba23f3e02a99c0c3b1c00a2cb5",
      "tree": "b7e74f61801c20207b20faed42b2a73490f538ed",
      "parents": [
        "4a8fa52e4b766e13793770fd2b8aeb712c4fc648",
        "d55e7d6fa8210efd0931156605955b0c68deacf0"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 20 15:23:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 20 15:23:04 2018 +0000"
      },
      "message": "Merge \"WifiTile: Avoid NPE during boot phase\""
    },
    {
      "commit": "4a8fa52e4b766e13793770fd2b8aeb712c4fc648",
      "tree": "cf96221a30cbd952ebc2347e7c6af506104b5eb3",
      "parents": [
        "8dbbc3543e18e7b43fa3dd99e8ab698c4b5c3b19",
        "27be1e9ba40cbeb4098ecede645eb5ecefa6a6b2"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 20 14:36:18 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 20 14:36:18 2018 +0000"
      },
      "message": "Merge \"Add flag to AMS.startInstrumentation() to disable hidden API checks\""
    },
    {
      "commit": "27be1e9ba40cbeb4098ecede645eb5ecefa6a6b2",
      "tree": "cf96221a30cbd952ebc2347e7c6af506104b5eb3",
      "parents": [
        "8dbbc3543e18e7b43fa3dd99e8ab698c4b5c3b19"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Feb 19 15:39:15 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Feb 19 15:39:40 2018 +0000"
      },
      "message": "Add flag to AMS.startInstrumentation() to disable hidden API checks\n\nSome tests need to use hidden APIs to check the internal state of\nthe framework. For those special use cases, we add a new flag to\nActivityManagerService.startInstrumentation that enables to start\ninstrumented processes without hidden API enforcement. Individual\ntest harnesses can change their Am command to request the exemption.\n\nBug: 64382372\nTest: adb shell am instrument --no-hidden-api-checks \u003ccomponent\u003e\n      adb logcat | grep \u0027Accessing hidden\u0027\nMerged-In: I1d734a95423fae90dae63ff09d5f606495830905\nChange-Id: Ifbb0d19d95737a9f601b11e20352cdc11f0ca5b6\n"
    },
    {
      "commit": "8dbbc3543e18e7b43fa3dd99e8ab698c4b5c3b19",
      "tree": "54bb98b7ef624967df9da377f66331d6c08cc774",
      "parents": [
        "1ea3d9411ab4a66f94e64ffa0d358a139117e15c",
        "2d86c7a4c77f9764d9d1f90e0c911acfcb0d6a23"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Feb 19 13:03:56 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 19 13:03:56 2018 +0000"
      },
      "message": "Merge \"Turn on DepAnn for test-base and test-runner\""
    },
    {
      "commit": "1ea3d9411ab4a66f94e64ffa0d358a139117e15c",
      "tree": "05d1ee268e515b39aa39b350f7d9131ba06b8bcd",
      "parents": [
        "114278c9eb563fba69efef294c91478c3eab2091",
        "b72b62d2f7e7104f9901bc8f44d5a3c0bb9dbf7a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Feb 19 03:45:27 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 19 03:45:27 2018 +0000"
      },
      "message": "Merge changes Ic28c5653,Ic635f97b\n\n* changes:\n  [LT2] Fix release request while lingering.\n  [LT1] Add a test for release request while lingering\n"
    },
    {
      "commit": "114278c9eb563fba69efef294c91478c3eab2091",
      "tree": "9795777e9eebac13258e70dde60299586c5a8014",
      "parents": [
        "473b3b7f037d4cde8facab27ee36a4356cc9d9a2",
        "715d39bdeb4fb2deecb174f7909399959648464b"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Mon Feb 19 02:13:48 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 19 02:13:48 2018 +0000"
      },
      "message": "Merge \"Don\u0027t refcount TRACK_DEFAULT requests.\""
    },
    {
      "commit": "b72b62d2f7e7104f9901bc8f44d5a3c0bb9dbf7a",
      "tree": "5886ef2aabdaeed764f4fea718468c1645806553",
      "parents": [
        "1fa777d4046299475c38baa8dfaa947ad27cccf1"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Feb 16 16:08:35 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Mon Feb 19 11:00:58 2018 +0900"
      },
      "message": "[LT2] Fix release request while lingering.\n\nTest: runtest framework-net\nChange-Id: Ic28c5653d16351903b792e76ba8b199b7ed1f8d4\n"
    },
    {
      "commit": "473b3b7f037d4cde8facab27ee36a4356cc9d9a2",
      "tree": "4de2cbfc3989745b83ba55eaf05c7523061b30e3",
      "parents": [
        "cfc6897a3951e4e797cb7ab3f81c4b16de976a03",
        "77fb07e9e9c1b0214ce8fa85406938bc6ebc97a8"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Sun Feb 18 23:14:42 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Feb 18 23:14:42 2018 +0000"
      },
      "message": "Merge \"DO NOT MERGE : fix useless import\""
    },
    {
      "commit": "cfc6897a3951e4e797cb7ab3f81c4b16de976a03",
      "tree": "bc325c75fc176faec39d330accc123bd7ce13221",
      "parents": [
        "554cfd1f1de5a778a7dca547f3fbf6a350094f14",
        "e26450b7142feae9902b432eb01bcd33f3cbd1bd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 17 04:49:23 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 17 04:49:23 2018 +0000"
      },
      "message": "Merge \"Add @Nullable to return values in Uri\""
    },
    {
      "commit": "554cfd1f1de5a778a7dca547f3fbf6a350094f14",
      "tree": "4a2f6f30b4c603f1cd779f8cd6463a7ba01a435c",
      "parents": [
        "b8d25ed3a46e4f8a48f722900934a15660cc78ec",
        "d0a190df8a04e10a6705148c02c5c4859ad75b70"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 17 01:39:54 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 17 01:39:54 2018 +0000"
      },
      "message": "Merge \"Add Zygote.startChildZygote() to fork a new process that itself is a zygote.\""
    },
    {
      "commit": "63dd81390dcae5b59c6a490b803e67721804b80a",
      "tree": "eeeb62da82cdc6d7a48af6152f6b9d1f7a106297",
      "parents": [
        "9f92ed943cc0d6224cc2fccd9620b9918fa54e44"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Wed Feb 14 13:09:45 2018 -0800"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Fri Feb 16 16:34:50 2018 -0800"
      },
      "message": "Fix ConnectivityServiceTest for NATT Keepalive\n\nFix test breakages I caused when adding cell\nsupport for NATT keepalives.\n\n-Make the minimum keepalive interval a constant in\n ConnectivityManager and use it in tests.\n-Re-Disallow IPv6 Keepalives\n\nBug: 73327535\nTest: \u0027runtest -x ConnectivityServiceTest\u0027 now passes\nChange-Id: I5ec4367d250ee371014e65c897c3897a25a05e2d\n"
    },
    {
      "commit": "d55e7d6fa8210efd0931156605955b0c68deacf0",
      "tree": "77db18ce28e2fd0cd640a306ffeb3f5700f79e30",
      "parents": [
        "b8d25ed3a46e4f8a48f722900934a15660cc78ec"
      ],
      "author": {
        "name": "Bruno Martins",
        "email": "bgcngm@gmail.com",
        "time": "Sat Feb 17 00:06:06 2018 +0100"
      },
      "committer": {
        "name": "Lennart Wieboldt",
        "email": "lennart.1997@gmx.de",
        "time": "Sat Feb 17 00:36:12 2018 +0100"
      },
      "message": "WifiTile: Avoid NPE during boot phase\n\n* Listening handling can only take place once mController\n  is properly initialized.\n\nChange-Id: Icd5003e67a725323a5445a936d5a38a3006c5431\n"
    },
    {
      "commit": "b8d25ed3a46e4f8a48f722900934a15660cc78ec",
      "tree": "6096a1051551c762070a4530c0daa6e141d7f7e6",
      "parents": [
        "8b764a0dab6b3dfe478437ed801a23870d82492e",
        "64afdd9376a44bc1520bf5fa60ae652c1c10dc24"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Fri Feb 16 20:35:45 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 20:35:45 2018 +0000"
      },
      "message": "Merge \"MSIM support for hidden IMS capability and registration query APIs.\""
    },
    {
      "commit": "8b764a0dab6b3dfe478437ed801a23870d82492e",
      "tree": "ee727b3d20e4e0362ed155e50f051aeca2d05204",
      "parents": [
        "80ae7124f580acdd86665cf907267772f715d56e",
        "ca575236145d1c739c2b17ba4abc95c0e2c029bc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 16 20:02:26 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 20:02:26 2018 +0000"
      },
      "message": "Merge \"[DO NOT MERGE] Fix some mouse + list-item selection/scrolling issues\""
    },
    {
      "commit": "80ae7124f580acdd86665cf907267772f715d56e",
      "tree": "00e2e0b991f304cd50e9c58f307e753bc4cc7285",
      "parents": [
        "999d1fc17204178da7ff45f8ba416e3f2cf576fd",
        "b6ec1be4922043b0f8031f542f1e440d5c2f08bb"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 16 19:54:26 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 19:54:26 2018 +0000"
      },
      "message": "Merge \"[DO NOT MERGE] Fix context menu position for RTL\""
    },
    {
      "commit": "d0a190df8a04e10a6705148c02c5c4859ad75b70",
      "tree": "35ce966a8d98e6a56113fd1f7a8dc7e299fe22ee",
      "parents": [
        "2c8456b22e7d9c66de9ae70f0a79582499a7b61d"
      ],
      "author": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Mon Feb 12 18:46:01 2018 -0500"
      },
      "committer": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Fri Feb 16 14:17:41 2018 -0500"
      },
      "message": "Add Zygote.startChildZygote() to fork a new process that itself is a zygote.\n\nThis adds a new --start-child-zygote argument that instructs the main\nzygote to create a new child process that will also be a zygote. The\nsystem_server generates a random name in the abstract socket namespace\nfor it and the child-zygote to communicate over, and that is passed as\nan argument to the new process.\n\nA child-zygote bypasses the normal post-fork-child of the zygote process\nin order to preserve itself as a zygote. This means not starting the\nBinder threadpool nor launching into ActivityThread. Instead, a\nchild-zygote calls into its own main function. The main function runs a\nZygoteServer select loop, listening on the socket name specified by the\nsystem_server when it was forked.\n\nUnlike the system zygotes, a child-zygote can be killed without bringing\ndown the system. Killing a child-zygote will not terminate its child\nprocesses, which will be reparented to init for reaping when they\neventually exit.\n\nBug: 63749735\nTest: m (with multi-project commits landed)\nChange-Id: I3e7ebbdba498f8fec1d84cdf927dc43a92be4b68\n"
    },
    {
      "commit": "999d1fc17204178da7ff45f8ba416e3f2cf576fd",
      "tree": "7bab850bcbc22a3cd9673d7ca1e26f968b3396ac",
      "parents": [
        "4eaa22f24e2e29991be4edf2b502a2f5edebe0e2",
        "cd67fb3e27b32685d75da8fc074a432a1a09af04"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Fri Feb 16 18:32:05 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 18:32:05 2018 +0000"
      },
      "message": "Merge \"Correct bug in IpSecTransformTest\""
    },
    {
      "commit": "4eaa22f24e2e29991be4edf2b502a2f5edebe0e2",
      "tree": "570d18b0e0e511277301b04de8c230b5c9c61ce1",
      "parents": [
        "977bcea1f002e53034ec5e4ac7dc90d5c84cab68",
        "7b9b5d7544f2a9038b69baefa8da12a33e5e99bf"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 16 16:05:19 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 16:05:19 2018 +0000"
      },
      "message": "Merge \"Framework: Disable [MissingOverride] for platformprotos\""
    },
    {
      "commit": "2d86c7a4c77f9764d9d1f90e0c911acfcb0d6a23",
      "tree": "afe716f2dbc32efbc9193130f0211cdb0f0cc829",
      "parents": [
        "46656fa28ec257c8ffcfe4964da3d8047cff49d4"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Feb 16 13:11:05 2018 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Feb 16 15:40:24 2018 +0000"
      },
      "message": "Turn on DepAnn for test-base and test-runner\n\nBug: 30188076\nTest: m -j20 RUN_ERROR_PRONE\u003dtrue android.test.base android.test.runner\nChange-Id: I735e3fbfcc710f1dc1b96e04f91b9feda8727b6c\n"
    },
    {
      "commit": "977bcea1f002e53034ec5e4ac7dc90d5c84cab68",
      "tree": "079c666fed76d374cf867a8aa8cdd6ae97476d70",
      "parents": [
        "46656fa28ec257c8ffcfe4964da3d8047cff49d4",
        "5aefbafb37f35d33d9d1270cda828e27f4107773"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 16 15:20:23 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 15:20:23 2018 +0000"
      },
      "message": "Merge \"BluetoothTile: Avoid NPE during boot up phase\""
    },
    {
      "commit": "46656fa28ec257c8ffcfe4964da3d8047cff49d4",
      "tree": "4b8ef6f38b0ca086d70e4389704727a74ef9da36",
      "parents": [
        "f50d9fbdc167c8f87465fb7521befe5182a710a8",
        "fe1eebec5d3a9c28b15b2ac8843859da484af0d6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 16 11:50:20 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 11:50:20 2018 +0000"
      },
      "message": "Merge \"Hidden API blacklisting killswitch.\""
    },
    {
      "commit": "fe1eebec5d3a9c28b15b2ac8843859da484af0d6",
      "tree": "4b8ef6f38b0ca086d70e4389704727a74ef9da36",
      "parents": [
        "f50d9fbdc167c8f87465fb7521befe5182a710a8"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Thu Feb 15 10:28:06 2018 +0000"
      },
      "committer": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Fri Feb 16 09:57:09 2018 +0000"
      },
      "message": "Hidden API blacklisting killswitch.\n\nJust support \"*\" for now, meaning disable all API blacklisting for all\napps.\n\nTest: Manually verified by:\n- installing test app that accesses hidden API\n- manually blacklist the API\n- $ adb shell settings put global hidden_api_blacklist_exemptions \\\\*\n\nThis is a cherry pick of change I9a41a104742c9aaaf3a753e7b0f3a1106e37d4d3\nfrom internal master.\n\nMerged-In: I9a41a104742c9aaaf3a753e7b0f3a1106e37d4d3\nChange-Id: Ibb2a1d054c1b099fc6093e37f24b2ed421a2313c\n"
    },
    {
      "commit": "1fa777d4046299475c38baa8dfaa947ad27cccf1",
      "tree": "a0b941c5bfe59d87f49a3c5004da0908210602dc",
      "parents": [
        "d35e81d6159f54a3072317082b5fa89f18e8cef5"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Feb 16 16:07:53 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Feb 16 18:09:42 2018 +0900"
      },
      "message": "[LT1] Add a test for release request while lingering\n\nTest: runtest framework-net\nChange-Id: Ic635f97bf3dad8b695b3b8cc32c1a8b891166f9f\n"
    },
    {
      "commit": "715d39bdeb4fb2deecb174f7909399959648464b",
      "tree": "930dfd5eca802c2be553f6b05b709bca5b07c001",
      "parents": [
        "d35e81d6159f54a3072317082b5fa89f18e8cef5"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Feb 16 17:59:29 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Feb 16 17:59:29 2018 +0900"
      },
      "message": "Don\u0027t refcount TRACK_DEFAULT requests.\n\nThis has no concrete impact on the behavior of ConnectivityService,\nbut in principle TRACK_DEFAULT requests should not be counted toward\nrequests that make a network foreground. It does not have an impact\nbecause only VPNs could be affected by this, and VPNs are always in\nthe foreground by definition.\n\nTest: runtest frameworks-net\nTest: cts\nChange-Id: Id2ae6b5c9d542fe168e64ed713b6ec0a04062c82\n"
    },
    {
      "commit": "77fb07e9e9c1b0214ce8fa85406938bc6ebc97a8",
      "tree": "4d9ee1bba169625037d997e8aa6d9cff87ff8e89",
      "parents": [
        "d35e81d6159f54a3072317082b5fa89f18e8cef5"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Feb 16 17:21:39 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Feb 16 17:21:39 2018 +0900"
      },
      "message": "DO NOT MERGE : fix useless import\n\nThis was added to avoid a merge conflict at a sensitive time.\nIt can (and should) go.\n\nTest: no code change\nChange-Id: I11d73e2d988ae61a168aa0f1cc7c2c506f509d30\n"
    },
    {
      "commit": "f50d9fbdc167c8f87465fb7521befe5182a710a8",
      "tree": "5ff1aad6f1cce01451cac46827b556b8221c91bc",
      "parents": [
        "b0817b238a9c6702218ba57a6105c4fbac339ca4",
        "ca867dc524116716fdeba9bb111b26b9380ff286"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 16 03:19:35 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 03:19:35 2018 +0000"
      },
      "message": "Merge \"Add missing\u0027}\u0027 in javadoc of public API method\""
    },
    {
      "commit": "cd67fb3e27b32685d75da8fc074a432a1a09af04",
      "tree": "ba178a50af5d3529d68fa3f0f5bcfacd2ee81983",
      "parents": [
        "3df127aefe70a2b6ab8fb744c6a82fae59549740"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Thu Feb 15 18:47:49 2018 -0800"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Thu Feb 15 18:52:07 2018 -0800"
      },
      "message": "Correct bug in IpSecTransformTest\n\ntestCreateTransformsWithSameConfigEqual used assertFalse rather than\nassertTrue\n\nBug: 69385347\nTest: Passing on walleye\nChange-Id: I8caa26e184e8bfc3e8acc9061d85c22d27ebf448\n"
    },
    {
      "commit": "cb581cb536f1cbfd8ba00b2c92f594173ddb0305",
      "tree": "26769398922015e2e80b83b806f478ba8a4e98af",
      "parents": [
        "b0817b238a9c6702218ba57a6105c4fbac339ca4"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Feb 15 18:35:52 2018 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Feb 15 18:51:18 2018 -0800"
      },
      "message": "Pass DEXOPT_INSTALL_WITH_DEX_METADATA_FILE for first boot\n\nMotivation, use dm files in system partition for verifying if they\nexist.\n\nBug: 70934104\nTest: manual\n\nChange-Id: I1224101eb830ce7c7bedb3a81b7569df1ef50491\n"
    },
    {
      "commit": "b0817b238a9c6702218ba57a6105c4fbac339ca4",
      "tree": "b5238cf602f22ca826cba6a05a7d6eed8754c348",
      "parents": [
        "3df127aefe70a2b6ab8fb744c6a82fae59549740",
        "b981617ec752df09e253e760244dd739c4d4cb26"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Feb 16 02:25:48 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 02:25:48 2018 +0000"
      },
      "message": "Merge \"Pass the compilation reason to dexopt\""
    },
    {
      "commit": "3df127aefe70a2b6ab8fb744c6a82fae59549740",
      "tree": "b2438365305340c02f623ac50709049f6f6ce007",
      "parents": [
        "3a419fe212c36a8368dbc917b482c402dacf08bf",
        "e2270652141700626b5c11d56e9a97cb0f8e1957"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 16 01:47:27 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 01:47:27 2018 +0000"
      },
      "message": "Merge \"Fix LTE Timing Advance Doc String\""
    },
    {
      "commit": "3a419fe212c36a8368dbc917b482c402dacf08bf",
      "tree": "d96060675b8147e8f48c948712df8e5ec9e2b3f5",
      "parents": [
        "549082991dbf9adb2d33601dc83c0a15b5dc1835",
        "53159324bb0140c923b82bbff690d1654341e245"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 16 01:34:43 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 01:34:43 2018 +0000"
      },
      "message": "Merge \"NfcTile: Avoid NPE during boot up phase\""
    },
    {
      "commit": "7b9b5d7544f2a9038b69baefa8da12a33e5e99bf",
      "tree": "5f8252288db2e66bbd387731a6accd44fcc49664",
      "parents": [
        "10034d94cf40ae968381c3535b464cde43cd22b5"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Feb 15 15:12:38 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Feb 16 01:34:21 2018 +0000"
      },
      "message": "Framework: Disable [MissingOverride] for platformprotos\n\nBug: 72714520\nTest: m javac-check-platformprotos RUN_ERROR_PRONE\u003dtrue\nMerged-In: I00f5a588fa74621d4c35dc4e39b54536815ad476\nChange-Id: I00f5a588fa74621d4c35dc4e39b54536815ad476\n"
    },
    {
      "commit": "549082991dbf9adb2d33601dc83c0a15b5dc1835",
      "tree": "a5864a82a981eac413cca5810d7243563112f274",
      "parents": [
        "e134d23a7a9500c737c8346054ff378274cd4ec4",
        "c4426af9eb02990f430d91caf3d1d54c34e83e55"
      ],
      "author": {
        "name": "Dan Zhang",
        "email": "danielzhang@google.com",
        "time": "Fri Feb 16 01:17:02 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 01:17:02 2018 +0000"
      },
      "message": "Merge \"Fix HdmiCecLocalDevice concurrent access\""
    },
    {
      "commit": "e134d23a7a9500c737c8346054ff378274cd4ec4",
      "tree": "08e8880a68702765fd34b5fbf417c7f3b14e2007",
      "parents": [
        "d35e81d6159f54a3072317082b5fa89f18e8cef5",
        "f74ff847347d2eb3e7b2f3147b7616d1321cac4c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 16 00:33:37 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 16 00:33:37 2018 +0000"
      },
      "message": "Merge \"DndTile: Avoid NPE during boot phase\""
    },
    {
      "commit": "d35e81d6159f54a3072317082b5fa89f18e8cef5",
      "tree": "f355492939d95bd57e72fdd7ea550bb68ebbdc90",
      "parents": [
        "b823d08d216489d5f0e21d46c35a4ec27c5c25eb",
        "13ee5767e1fdf42acc203f3679f6b5fd06865077"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 15 23:56:55 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 15 23:56:55 2018 +0000"
      },
      "message": "Merge \"Un-hide Connection-side RTT APIs for Dialer\""
    },
    {
      "commit": "e26450b7142feae9902b432eb01bcd33f3cbd1bd",
      "tree": "90be86aaef5798e8caf0b19529ee56720a14e9e6",
      "parents": [
        "b823d08d216489d5f0e21d46c35a4ec27c5c25eb"
      ],
      "author": {
        "name": "Scott Kennedy",
        "email": "skennedy27@gmail.com",
        "time": "Thu Feb 15 15:36:40 2018 -0800"
      },
      "committer": {
        "name": "Scott Kennedy",
        "email": "skennedy27@gmail.com",
        "time": "Thu Feb 15 23:53:47 2018 +0000"
      },
      "message": "Add @Nullable to return values in Uri\n\nThis makes it much easier to add null-safety when calling this from Kotlin.\n\nTest: refactoring CL. Existing unit tests still pass.\nChange-Id: I55c33ad4ff1306afd80c1a5562c54dfcb6068b0b\n"
    },
    {
      "commit": "13ee5767e1fdf42acc203f3679f6b5fd06865077",
      "tree": "cf1260e2978cc87218bee775820d322128be8774",
      "parents": [
        "2c8456b22e7d9c66de9ae70f0a79582499a7b61d"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Mon Dec 04 14:19:30 2017 -0800"
      },
      "committer": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Thu Feb 15 21:34:55 2018 +0000"
      },
      "message": "Un-hide Connection-side RTT APIs for Dialer\n\nBug: 63934808\nTest: builds\nChange-Id: I59a892fb0e314810e92dd9ad7d0c2f4610055045\nMerged-In: I59a892fb0e314810e92dd9ad7d0c2f461005504\n"
    },
    {
      "commit": "e2270652141700626b5c11d56e9a97cb0f8e1957",
      "tree": "172f39815fac44fa0d296d6ae185fd36cf21e5b0",
      "parents": [
        "9f92ed943cc0d6224cc2fccd9620b9918fa54e44"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Thu Feb 15 13:06:16 2018 -0800"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Thu Feb 15 13:07:59 2018 -0800"
      },
      "message": "Fix LTE Timing Advance Doc String\n\nThe Doc string for LTE timing advance incorrectly\nlists the range based on the maximum size of an\nincremental TA command rather than the cumulative\ntiming advance. The spec reference is correct, but\nthe range was wrong.\n\nBug: 66751464\nTest: compilation (docstring only change)\nChange-Id: I0242cae7af40a7d9ed5ae9a2a509592076e5b6a3\n"
    },
    {
      "commit": "b823d08d216489d5f0e21d46c35a4ec27c5c25eb",
      "tree": "583608693a5896f879e3a8747c7e8f660e20aa08",
      "parents": [
        "9f92ed943cc0d6224cc2fccd9620b9918fa54e44",
        "ee57508851800b757e1d2f1b92da50ae6630d541"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Thu Feb 15 21:01:10 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 15 21:01:10 2018 +0000"
      },
      "message": "Merge \"Add setting and logging for RTT\""
    },
    {
      "commit": "b981617ec752df09e253e760244dd739c4d4cb26",
      "tree": "4b01f7524baf94fd6682937b7cc9f97b97f589aa",
      "parents": [
        "9f92ed943cc0d6224cc2fccd9620b9918fa54e44"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Feb 12 12:00:44 2018 -0800"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Feb 15 12:49:26 2018 -0800"
      },
      "message": "Pass the compilation reason to dexopt\n\nRecord the compilation reason in the oat files to enable better\nperformance monitoring.\n\nTest: DexoptOptionsTest\n      manual\nBug: 73102540\n\nChange-Id: Ifa487d4bc33dcd06f12af6bdd1d9a9c5f4562f4b\n"
    },
    {
      "commit": "9f92ed943cc0d6224cc2fccd9620b9918fa54e44",
      "tree": "302966f0372b903a185eb2da40d1fba4681c8ff2",
      "parents": [
        "1da6f542ef187c860a5772f7c2e391e5a2e6c2d5",
        "574b41a1bdde8a74b5393a7eff493e5b55c8e814"
      ],
      "author": {
        "name": "Xiangyu/Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Thu Feb 15 19:01:59 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 15 19:01:59 2018 +0000"
      },
      "message": "Merge \"Add NetworkRegistrationState into SS\u0027s list.\""
    },
    {
      "commit": "ee57508851800b757e1d2f1b92da50ae6630d541",
      "tree": "a8ce5a400b5ab1997ae6a77300d7cf488223273a",
      "parents": [
        "2c8456b22e7d9c66de9ae70f0a79582499a7b61d"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Mon Jan 29 17:22:02 2018 -0800"
      },
      "committer": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Thu Feb 15 18:55:35 2018 +0000"
      },
      "message": "Add setting and logging for RTT\n\nAdd a system setting to store preferred RTT mode for calls. Add logging\nfor RTT in Telecom base classes.\n\nBug: 63934808\nTest: manual\nChange-Id: Ie26fac800931604379bbe7b8abfed7caa8c0236d\nMerged-In: Ie26fac800931604379bbe7b8abfed7caa8c0236d\n"
    },
    {
      "commit": "1da6f542ef187c860a5772f7c2e391e5a2e6c2d5",
      "tree": "9d01815bece8849fbffe00eb521335e5f393b8cd",
      "parents": [
        "b98102b4dccc6a59a93c5ea6b5e143be978583bd",
        "6b067bc879a752fd5f1a3fe55183cfba89d5505f"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Thu Feb 15 17:23:31 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 15 17:23:31 2018 +0000"
      },
      "message": "Merge \"Add new owners files for Telephony/Telecom frameworks files.\""
    },
    {
      "commit": "b98102b4dccc6a59a93c5ea6b5e143be978583bd",
      "tree": "6e4f35b118bf5354199da29144aa5c7492f58d84",
      "parents": [
        "10034d94cf40ae968381c3535b464cde43cd22b5",
        "29ec70b9011fbd6ead45e30e3c6067988c4453ed"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 15 16:17:06 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 15 16:17:06 2018 +0000"
      },
      "message": "Merge changes from topic \"cp_calin_framework_2017\"\n\n* changes:\n  Allow public profile compilation for primary apks\n  [framework] Pass .dm files to dexopt at install time\n  Extend the ArtManager profiling API to cover boot image profiling\n  [framework] Extend profile operations to take the profile name\n  Accept UserHandle.USER_ALL during profile preparation\n  [framework] Prepare profile for app code paths\n  Perform a non strict matching of .dm files when computing the size\n  Support installation of DexMetadata files (.dm)\n  Rename snapshotProfile to createProfileSnapshot for consistency\n  Implement ArtManager#snapshotProfile API\n  Add SystemApis to expose runtime profile information\n  Log SHA256 of secondary dex files during reconcile.\n"
    },
    {
      "commit": "10034d94cf40ae968381c3535b464cde43cd22b5",
      "tree": "63b7eafa4bbebf9b13fd2f661c084b8e09524751",
      "parents": [
        "edab226d0ed7a3d63706bc7a58f0c17ea1c75b74",
        "5234d559b47ed034ed0abc104a3597b5169b18db"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Feb 15 11:55:15 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 15 11:55:15 2018 +0000"
      },
      "message": "Merge \"Update hidden API toast message\""
    },
    {
      "commit": "edab226d0ed7a3d63706bc7a58f0c17ea1c75b74",
      "tree": "e3b8166d7e4e8715e8f7556479119cdabd507a87",
      "parents": [
        "47ef64b0d2ca41f879facbfb278a7d14c3b9577b",
        "054cd16781763838c17b221ffcd1196641b57b00"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Thu Feb 15 11:25:36 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 15 11:25:36 2018 +0000"
      },
      "message": "Merge changes I3d68dbf8,I6ea524bb,I978d9119\n\n* changes:\n  Deprecate CONNECTIVITY_ACTION.\n  Publish FOREGROUND and add NOT_SUSPENDED capabilities.\n  Send null UIDs to apps instead of single-uid lists.\n"
    },
    {
      "commit": "47ef64b0d2ca41f879facbfb278a7d14c3b9577b",
      "tree": "1f6ce1c36f6f06ce7b4d82e5078b6dfab3a29a6e",
      "parents": [
        "aca4460b642b28feffc300ef2195cb4e93b53f98",
        "fd76d5040bb71e0066ab91e664e43ec185536b63"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Feb 15 10:03:26 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 15 10:03:26 2018 +0000"
      },
      "message": "Merge changes Icd56662d,I0ece820f\n\n* changes:\n  Restrict OWNERS in android.net.*\n  Add OWNERS to the libandroid_net library.\n"
    },
    {
      "commit": "5234d559b47ed034ed0abc104a3597b5169b18db",
      "tree": "f664f5bba60ebc506c5e33d04be6af6ac9f1ab40",
      "parents": [
        "909e9d3e494766ae415ea2e1a74667ec9b777b76"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Feb 14 22:36:34 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Feb 15 09:09:55 2018 +0000"
      },
      "message": "Update hidden API toast message\n\nChange the toast message shown by an Activity when VMRuntime reports\nthat the app has used a private API.\n(a) fix a typo: compatiblity -\u003e compatibility\n(b) change guidance from \"please consult log\" to \"go to \u003curl\u003e for\n    more info\" where devs can learn how to proceed if their app does\n    have compatibility issues.\n\nBug: 64382372\nTest: make, visual\nChange-Id: Idbe32a724438bb7b0826d0b4e11ef505015cb321\n"
    },
    {
      "commit": "fd76d5040bb71e0066ab91e664e43ec185536b63",
      "tree": "e0e2a8535e284549e8d0a76b3c0753b8a9419529",
      "parents": [
        "8a2105759bf7a5801d7dbbdf4516b7d1fdcc6261"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Feb 15 16:43:44 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Feb 15 16:43:44 2018 +0900"
      },
      "message": "Restrict OWNERS in android.net.*\n\nTest: None\nChange-Id: Icd56662dcbc86b49015d094fd8ae2ade235aa475\n"
    },
    {
      "commit": "8a2105759bf7a5801d7dbbdf4516b7d1fdcc6261",
      "tree": "8ebb9be0599d4c406c3b2f34e2dd022d9213a0b1",
      "parents": [
        "9f1682876751b9e4b14f7919d0205fdd02809575"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Feb 15 15:51:58 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Feb 15 15:57:25 2018 +0900"
      },
      "message": "Add OWNERS to the libandroid_net library.\n\nTest: None\nChange-Id: I0ece820fc0de786a81df9f922135acdf92f1d136\n"
    },
    {
      "commit": "aca4460b642b28feffc300ef2195cb4e93b53f98",
      "tree": "404b20f03bfa5e892fa600b37b7a38fc86978717",
      "parents": [
        "2c8456b22e7d9c66de9ae70f0a79582499a7b61d",
        "ea580fa1d1900c3b771cf24ee2dc13d14c0b8ee5"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 15 04:14:43 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 15 04:14:43 2018 +0000"
      },
      "message": "Merge \"Hearing Aid profile\""
    },
    {
      "commit": "6b067bc879a752fd5f1a3fe55183cfba89d5505f",
      "tree": "7ddf09c4d2ada243420cb875efeee617aab32142",
      "parents": [
        "0872f6d5e3454430e316a854ff892510934f85d8"
      ],
      "author": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Wed Feb 14 14:37:17 2018 -0800"
      },
      "committer": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Wed Feb 14 16:13:39 2018 -0800"
      },
      "message": "Add new owners files for Telephony/Telecom frameworks files.\n\nTest: N/A\nBug: 73373651\nChange-Id: Ia0e19018d6cd72923f9f20b372d303fa532409b0\n"
    },
    {
      "commit": "574b41a1bdde8a74b5393a7eff493e5b55c8e814",
      "tree": "7173b2363c93a5e86f148b2639493c8808d35f57",
      "parents": [
        "1168c31c4a554d37e405c2f940707de0f91eab57"
      ],
      "author": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Tue Feb 13 15:42:58 2018 -0800"
      },
      "committer": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Wed Feb 14 14:32:29 2018 -0800"
      },
      "message": "Add NetworkRegistrationState into SS\u0027s list.\n\nAdd hidden API to add NetworkRegistrationState into SS\u0027s\nNetworkRegistrationState list.\n\nBug: 73305596\nTest: unittest\nChange-Id: Ief7f22632c1f3400c01663d13b990dc9b0d59e2e\n"
    },
    {
      "commit": "ea580fa1d1900c3b771cf24ee2dc13d14c0b8ee5",
      "tree": "59f12ae01b26dcaa89209c5f0f945ae4a181939e",
      "parents": [
        "d1134525fc506783c9d7e94fee6e5379b92f2038"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Wed Nov 22 11:02:34 2017 -0800"
      },
      "committer": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Wed Feb 14 14:24:44 2018 -0800"
      },
      "message": "Hearing Aid profile\n\nThis is implementation of Hearing Aid Profile that will in future\nbe connected to Bluetooth Manager - see TODOs in BluetoothHearingAid.java\n\nBug: 69623109\nTest: compilation. Manual test with HA.\nChange-Id: I79643ea1e14e9df7f5771169359c964a60c56618\n"
    },
    {
      "commit": "2c8456b22e7d9c66de9ae70f0a79582499a7b61d",
      "tree": "2abb06cb22dacd47d7e947668e564e0408499607",
      "parents": [
        "3fa6fe21177f2c2bb04edf932e45dccd39de99ab",
        "9dd3a385279403ff94dd07b052424da3acd3a1f4"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Feb 14 19:37:53 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 14 19:37:53 2018 +0000"
      },
      "message": "Merge \"Copy IpSecConfig when IpSecTransforms are created\""
    },
    {
      "commit": "3fa6fe21177f2c2bb04edf932e45dccd39de99ab",
      "tree": "c4d16be7e83d0e4cc5a5242f8ddb7c34e40a820a",
      "parents": [
        "779f56165062cac60b78c27b65ab35caa57a2068",
        "58278bed658f7520bb60c48f225e91363ccc30ed"
      ],
      "author": {
        "name": "Chen Xu",
        "email": "fionaxu@google.com",
        "time": "Wed Feb 14 18:54:06 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 14 18:54:06 2018 +0000"
      },
      "message": "Merge \"add a current table in CarrierIdProvider\""
    },
    {
      "commit": "64afdd9376a44bc1520bf5fa60ae652c1c10dc24",
      "tree": "4e8786c14e04e44f0b4ef8848e62062d432918ab",
      "parents": [
        "0872f6d5e3454430e316a854ff892510934f85d8"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Thu Feb 08 16:06:31 2018 -0800"
      },
      "committer": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Wed Feb 14 18:36:17 2018 +0000"
      },
      "message": "MSIM support for hidden IMS capability and registration query APIs.\n\nModifies TelephonyManager APIs to better support MSIM devices\nand adds a method to query MMTEL IMS Registration technology.\n\nTest: Manual, telephony unit tests.\nBug: 35128252\nMerged-In: Ie37185bd3477635094a0db998918ba5ad59842be\nChange-Id: Ie37185bd3477635094a0db998918ba5ad59842be\n"
    },
    {
      "commit": "29ec70b9011fbd6ead45e30e3c6067988c4453ed",
      "tree": "b7f43a3076ad5dc03973b6eadcfe7b829aec6afe",
      "parents": [
        "29c772cb4835794e02084043be7ca139c1fb2171"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Feb 01 17:23:13 2018 +0000"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:19:42 2018 -0800"
      },
      "message": "Allow public profile compilation for primary apks\n\nIt is ok to perform a \"public\" compilation with\nprofiles comming from dex metdata files.\n\n(cherry picked from commit ff3e4a1b2fb082e8146d00a41f702d0b00d9cab0)\n\nTest: adb install foo.apk foo.dm\nBug: 30934496\nMerged-In: I1d15e3281ccc61b19a2aafe3c885285a83ff6115\nChange-Id: I1d15e3281ccc61b19a2aafe3c885285a83ff6115\n"
    },
    {
      "commit": "29c772cb4835794e02084043be7ca139c1fb2171",
      "tree": "646aa9282eaec6e4d65116750eb6dd607041d469",
      "parents": [
        "e4ad74e83491818baf8ce74f4081fa9c365a13cc"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Feb 01 17:20:51 2018 +0000"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:19:42 2018 -0800"
      },
      "message": "[framework] Pass .dm files to dexopt at install time\n\n(cherry picked from commit cc65194e8e5a284e915176200a846ec75c037d95)\n\nTest: DexoptOptionsTest\n      adb install foo.apk foo.dm\nBug: 30934496\n\nMerged-In: If7e705a0efc0954a385ec3bfe7a93921c0d83351\nChange-Id: If7e705a0efc0954a385ec3bfe7a93921c0d83351\n"
    },
    {
      "commit": "e4ad74e83491818baf8ce74f4081fa9c365a13cc",
      "tree": "c4fb08bd2db7b3490bce231b144f43d1ed9cca8f",
      "parents": [
        "ea6c0ffb4a276210b6d971c87a15a7484446d3df"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Sun Jan 21 21:39:18 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:19:42 2018 -0800"
      },
      "message": "Extend the ArtManager profiling API to cover boot image profiling\n\nThe boot image profile is available only on userdebug and eng builds and\ncombines the boot classpath and system server classpath.\n\nAlso, update ArtManager API to use Executors instead of Handlers.\n\n(cherry picked from commit fcbb74a4296fd808e1058ecebd91fac56582e799)\n\nTest: gts GtsAndroidRuntimeManagerHostTestCases\nBug: 30934496\nMerged-In: Ie501947a659d644acbde04fb46157dd0c7944e81\nChange-Id: Ie501947a659d644acbde04fb46157dd0c7944e81\n"
    },
    {
      "commit": "ea6c0ffb4a276210b6d971c87a15a7484446d3df",
      "tree": "faa3b6481bb9ff6966df31426b7a1bf930114109",
      "parents": [
        "362b591a1dc40f0422746887978c43689e1cfff4"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Jan 19 20:32:47 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:19:42 2018 -0800"
      },
      "message": "[framework] Extend profile operations to take the profile name\n\nExtend the installd profile interface to take the profile name as\nargument. This shifts the responsibility for choosing the names of\nprofiles for primary apks completely to PackageManager. Each of the\napplication code paths will get an unique profile name based on their\nsplit name.\n\nAll the profile operations will now work on a specific profile name rather\nthan assuming a default global name.\n\nAlso, move dumpProfiles and clearProfiles functionality to the\nArtManagerService so that we can re-use profileName computations easier.\n\n(cherry picked from commit 6ae39fc2e5b4692d092a042816939fd0a5f3e3b8)\n\nTest: manual (dexopt apps, merge profiles, clear profiles)\n      gts GtsAndroidRuntimeManagerHostTestCases\nBug: 30934496\n\nMerged-In: Ie65d45eed7de0844edf4b7af918d7eaa74ec1f2c\nChange-Id: Ie65d45eed7de0844edf4b7af918d7eaa74ec1f2c\n"
    },
    {
      "commit": "362b591a1dc40f0422746887978c43689e1cfff4",
      "tree": "bd8d9e94c9fc9cdef52c818899f5d3b31661318d",
      "parents": [
        "b62a9045c2dc7f2b373a79e819e7064c88d24bf8"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Jan 24 14:43:24 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:19:42 2018 -0800"
      },
      "message": "Accept UserHandle.USER_ALL during profile preparation\n\n(cherry picked from commit 5bbe26ee01bc9785487fe5e748e624b6fc5bd3a4)\n\nTest: adb install foo.apk\nBug: 72453027\nMerged-In: I840d70d47a256c8853bbe1b9b023f51bdd5ddf6b\nChange-Id: I840d70d47a256c8853bbe1b9b023f51bdd5ddf6b\n"
    },
    {
      "commit": "b62a9045c2dc7f2b373a79e819e7064c88d24bf8",
      "tree": "8bf54694153e1d220ba05da8f6b8eafd309b0c92",
      "parents": [
        "a8f1a4c33968f2f27a45eff4e54aa9e2daf268f0"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Jan 18 15:17:29 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:19:42 2018 -0800"
      },
      "message": "[framework] Prepare profile for app code paths\n\nThis CL is an intermediate step to enable the use of profiles shipped in\nthe dex metadata files.\n\nThe preparation consist of:\n- creating the current profile\n- merging the profile from the dex metadata file (if present) into the\nreference profile\n\nand happens:\n- after the application data directory is created, to capture system\napps.\n- post-install (right before we dexopt), to capture any new code paths\n\n(cherry picked from commit 3621be71d0fe8a349ca468aca99a53a17f6575b3)\n\nTest: manual (install apps and splits, take OTA)\nBug: 30934496\n\nMerged-In: Id36474ab629ad3ffafd24381d30e3d88ac02d576\nChange-Id: Id36474ab629ad3ffafd24381d30e3d88ac02d576\n"
    },
    {
      "commit": "a8f1a4c33968f2f27a45eff4e54aa9e2daf268f0",
      "tree": "43f950ead937fd383896e14cb09f81ef91276a18",
      "parents": [
        "011603ab76f55e1d8b62296ac48704b8b032d8e7"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Jan 22 12:50:01 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:19:42 2018 -0800"
      },
      "message": "Perform a non strict matching of .dm files when computing the size\n\n\u0027adb shell pm install\u0027 creates the PackageLite structure without\nvalidating or renaming the input files to \u0027.apk\u0027.\n\nBe more permissive in DexMetadataHeler when computing the size of the\npackage to allow for this scenario.\n\n(cherry picked from commit 10b27eb2ccbb8992895827c0fb21e2d3f9c727db)\n\nTest: atest\ncore/tests/coretests/src/android/content/pm/dex/DexMetadataHelperTest.java\nBug: 72267410\n\nMerged-In: Ica446b0822be71826d02d01ada015a43d8133c68\nChange-Id: Ica446b0822be71826d02d01ada015a43d8133c68\n"
    },
    {
      "commit": "011603ab76f55e1d8b62296ac48704b8b032d8e7",
      "tree": "979e02f3215596b11b9ad793be613dd4d13a1798",
      "parents": [
        "b46b577dc1b5a0c60b8404b051bc89315fad3dba"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 11 18:26:13 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:00:56 2018 -0800"
      },
      "message": "Support installation of DexMetadata files (.dm)\n\nAdd support in the package installer to install dex metadata files\nalongside the application apks (base or splits).\n\nDuring installation or update the dex metadata files will need to have a\nmatching apk file. The matching is done by checking the file extension\n(e.g. base.apk -\u003e base.dm, split_a.apk -\u003e split.dm).\n\nOn disk, the metadata files are placed next to the apks.\n\nThe .dm files will be used during install-time optimizations and passed\nverbatim to dex2oat.\n\nTest: adb shell am instrument -w \\\n1) adb shell am instrument -w \\\n  -e class android.content.pm.DexMetadataHelperTest\n\ncom.android.frameworks.coretests/android.support.test.runner.AndroidJUnitRunner\n\n2) adb install-multiple CtsClassloaderSplitApp.apk\nCtsClassloaderSplitApp.dm CtsClassloaderSplitAppFeatureA.apk\nCtsClassloaderSplitAppFeatureA.dm CtsClassloaderSplitAppFeatureB.apk\n\n3) gts-tradefed -m GtsAndroidRuntimeManagerHostTestCases\n\n(cherry picked from commit 3fc56c30000d9b88c2145d4297a97ec5061d60d1)\n\nBug: 30934496\nMerged-In: I86f0a8307705ff3d6a5a85c2fcaae085dd62d4af\nChange-Id: I86f0a8307705ff3d6a5a85c2fcaae085dd62d4af\n"
    },
    {
      "commit": "b46b577dc1b5a0c60b8404b051bc89315fad3dba",
      "tree": "7b2079e27472158d880c233acac78ed1184c3251",
      "parents": [
        "369fbd29838a98aed84bff16af415da574df9576"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Dec 05 12:33:32 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:00:56 2018 -0800"
      },
      "message": "Rename snapshotProfile to createProfileSnapshot for consistency\n\n(cherry picked from commit 388cd5fffe7564ae364776d7f557e3a301387840)\n\nTest: build\nBug: 30934496\nMerged-In: I602262d22509b279383ff2a71e38c8bae059498a\nChange-Id: I602262d22509b279383ff2a71e38c8bae059498a\n"
    },
    {
      "commit": "369fbd29838a98aed84bff16af415da574df9576",
      "tree": "72502ac5e4e8eb39e519bb9b6a3532f054732800",
      "parents": [
        "1d875ad3ae5bb27016f9650b5bf4c39c08b6570e"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Nov 29 18:26:55 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:00:56 2018 -0800"
      },
      "message": "Implement ArtManager#snapshotProfile API\n\nComplete the implementation of ArtManager#snapshotProfile. The snapshot is\nperformed by calling the installer and then return to the caller via the\nspecified callback.\n\n(cherry picked from commit fd9f8ae973122a50f336e38c386ecbc0095d8adc)\n\nBug: 30934496\nTest: gts-tradefed -m GtsAndroidRuntimeManagerHostTestCases\nMerged-In: I87131487846d91d79a56041445420376b61ca8e7\nChange-Id: I87131487846d91d79a56041445420376b61ca8e7\n"
    },
    {
      "commit": "1d875ad3ae5bb27016f9650b5bf4c39c08b6570e",
      "tree": "2344bf7d126d9287bbaae8e0a575a8f2b46c10bb",
      "parents": [
        "1b37daa810c929938a642f56cb7aeb75c4f89766"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Nov 07 18:49:43 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:00:56 2018 -0800"
      },
      "message": "Add SystemApis to expose runtime profile information\n\nThe API allows a system apps which acquired\n{@code android.permission.READ_RUNTIME_PROFILE} to snapshot the runtime\nprofiles of installed packages.\n\nThe API is implemented in a new service class (AndroidRuntimeManager)\naccessible from the context using\ncontext().getPackageManager().getAndroidRuntimeManager().\n\nThe main functionality is exposed as a one way call into the\nAndroidRuntimeManager with the result being posted on a callback. The\nprofile is available to the caller as a read-only ParcelFileDescriptor.\n\nThis CL only adds the API interfaces and validation. It does not fully\nimplement the functionality.\n\noneway void snapshotRuntimeProfile(in String packageName,\n  in String codePath, in ISnapshotRuntimeProfileCallback callback)\n\n(cherry picked from commit 45f8b29ce0ca9f80c586850c4be3a1e552bc6c2f)\n\nBug: 30934496\nTest: gts-tradefed -m GtsAndroidRuntimeManagerHostTestCases\n\nMerged-In: Iaa6be4715840f24508acba3162ea9c1ab725bd38\nChange-Id: Iaa6be4715840f24508acba3162ea9c1ab725bd38\n"
    },
    {
      "commit": "1b37daa810c929938a642f56cb7aeb75c4f89766",
      "tree": "f81f4695bd00b2ebec61bce009a3592b702ec2c8",
      "parents": [
        "779f56165062cac60b78c27b65ab35caa57a2068"
      ],
      "author": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Mon Oct 16 12:31:44 2017 +0100"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 14 08:00:56 2018 -0800"
      },
      "message": "Log SHA256 of secondary dex files during reconcile.\n\n(cherry picked from commit a0023604ddaeef34049f1a245be7c42a66a7d0e8)\n\nBug: 63927552\nTest: Exercised manually. Added unit test for DexManager.\n\nMerged-In: Ic8e9ea4da8eb5c22fbe088a59a406e36bc2eb6fa\nChange-Id: Ic8e9ea4da8eb5c22fbe088a59a406e36bc2eb6fa\n"
    },
    {
      "commit": "779f56165062cac60b78c27b65ab35caa57a2068",
      "tree": "13ad4285101f99fc269e3b17fa324b4186506e12",
      "parents": [
        "46b4862d20a7ec1c00c1dac98fafa63be87343ca",
        "f11feb4745fda418f31ebbbbf6933dd43d9b0691"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 14 15:02:22 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 14 15:02:22 2018 +0000"
      },
      "message": "Merge \"Fix link-type check warning on PMTest_Java* test apps\""
    },
    {
      "commit": "46b4862d20a7ec1c00c1dac98fafa63be87343ca",
      "tree": "b8c5541e06f988f6d7477d20ac8a564e7c32ceb4",
      "parents": [
        "0db84fcc8f1fdd1cd304225dc49bcba0c39d41e8",
        "b3a4aab310098146e803c5abdc1886f44cb5bee3"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Feb 14 11:41:02 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 14 11:41:02 2018 +0000"
      },
      "message": "Merge \"Refactor runtime hidden API flag from negative to positive\""
    },
    {
      "commit": "b3a4aab310098146e803c5abdc1886f44cb5bee3",
      "tree": "b8c5541e06f988f6d7477d20ac8a564e7c32ceb4",
      "parents": [
        "0db84fcc8f1fdd1cd304225dc49bcba0c39d41e8"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 13 17:04:26 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Feb 14 10:13:06 2018 +0000"
      },
      "message": "Refactor runtime hidden API flag from negative to positive\n\nThere are only two situations in which we want to enable hidden API\naccess flag checks. Turning the flag from DISABLE_ to ENABLE_\nsimplifies logic in ART and reduces the number places where the flag\nhad to be passed down to ART.\n\nBug: 64382372\nTest: boot device, install and run apps, check log messages\n\n(cherry picked from commit f7e31c0a2b69e97662e2bdeb7e5b5c6d0a7f995c)\n\nChange-Id: Ib2f70696d98c6e1500d1d419d6acf0a8d0487213\n"
    },
    {
      "commit": "0db84fcc8f1fdd1cd304225dc49bcba0c39d41e8",
      "tree": "726879df1422ca8a863b5cb9ac1aee7d9b3183e8",
      "parents": [
        "9fda81e274e08ee1ac8e5986df1389ed2242eca8",
        "9ccafd8265fbccdfe61c58c50d27dbcf0dac6e1e"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Wed Feb 14 09:17:32 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 14 09:17:32 2018 +0000"
      },
      "message": "Merge \"add swapPss of native process to totalSwapPss\""
    },
    {
      "commit": "58278bed658f7520bb60c48f225e91363ccc30ed",
      "tree": "684bd8b1168d6e1d72496f08756d67abad115609",
      "parents": [
        "9fda81e274e08ee1ac8e5986df1389ed2242eca8"
      ],
      "author": {
        "name": "fionaxu",
        "email": "fionaxu@google.com",
        "time": "Mon Jan 29 14:08:12 2018 -0800"
      },
      "committer": {
        "name": "fionaxu",
        "email": "fionaxu@google.com",
        "time": "Tue Feb 13 23:46:19 2018 -0800"
      },
      "message": "add a current table in CarrierIdProvider\n\nrestructure CarrierIdProvider into two tables\n1. All - a private table which stores a complete mapping of all carriers\n2. Current - a public table only stores the carrier identification of the\ncurrent active subs. require no permission to query.\nexpose the content url to public so that apps could be\nnotified on carrier identity change either on background or foreground.\n\nBug: 72571475\nTest: runtest --path CarrierIdProviderTest.java\nTest: Manual\nChange-Id: If2a20288e63d25343f5bb582b35564d769a4e13b\n(cherry picked from commit 3d00d698d7d6c10628076cca8df30adb50c52563)\nMerged-in: If2a20288e63d25343f5bb582b35564d769a4e13b\n"
    },
    {
      "commit": "f11feb4745fda418f31ebbbbf6933dd43d9b0691",
      "tree": "21bfb463a423105c3b7c8b7a7506c504a9e5e9ab",
      "parents": [
        "d1134525fc506783c9d7e94fee6e5379b92f2038"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Feb 14 16:26:04 2018 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Feb 14 16:29:28 2018 +0900"
      },
      "message": "Fix link-type check warning on PMTest_Java* test apps\n\nThe test apps are built with SDK, but are using native libraries built\nwithout SDK (libpmtest(32|64|dual)). This has been causing link-type check\nwarning, which will be errors soon.\n\nFixing the warning by building the native libraries with SDK.\n\nBug: 69899800\nTest: mma -j under\nframeworks/base/core/tests/hosttests/test-apps/SharedUid is successful\nand does not show any link-type check warning\n\nChange-Id: I660edb9accd8965ddd471f88f2b47f6b7285b83f\n"
    },
    {
      "commit": "054cd16781763838c17b221ffcd1196641b57b00",
      "tree": "1375e90d560b8160aa725a62fe9b634521312a12",
      "parents": [
        "804b8fb96854555f16946924aec80c4b450bafb3"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Sat Feb 10 05:33:50 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Wed Feb 14 15:14:44 2018 +0900"
      },
      "message": "Deprecate CONNECTIVITY_ACTION.\n\nThat was its destiny.\nUse NetworkCallbacks instead.\n\nTest: runtest frameworks-net, but this is only doc changes\nChange-Id: I3d68dbf817de92c66d899a7cc4519c5639e4c049\n"
    },
    {
      "commit": "804b8fb96854555f16946924aec80c4b450bafb3",
      "tree": "8f10489075a133a33eb7f6adf9f0f0278ce7bc42",
      "parents": [
        "f19db374092738928b2b0c36aaf144c303c8874c"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Jan 30 22:41:41 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Wed Feb 14 15:14:41 2018 +0900"
      },
      "message": "Publish FOREGROUND and add NOT_SUSPENDED capabilities.\n\nNOT_SUSPENDED and FOREGROUND are capabilities that need to\nbe public so as to reach feature parity with what information\ncan be gotten through the use of CONNECTIVITY_ACTION and\nsynchronous calls to ConnectivityManager. This change makes\nthem public, and wires up the NOT_SUSPENDED capability.\nThis deprecates in effect the old onSuspended and onResumed\ncallbacks, but these have never been public.\n\nThis also converts the onAvailable path from a multiple\nbinder call design to a simpler, single binder call. This\nis only for internal convenience\n\nTest: runtest frameworks-net\nTest: cts\nTest: also manual testing\nChange-Id: I6ea524bb361ecef0569ea2f9006c1e516378bc25\n"
    },
    {
      "commit": "f19db374092738928b2b0c36aaf144c303c8874c",
      "tree": "114a7548a95860b34d2b8b546919fc89e8fa9554",
      "parents": [
        "f27242dbd6aa4736070f5d82d750f30bee674a0d"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Jan 26 19:24:40 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Wed Feb 14 12:47:15 2018 +0900"
      },
      "message": "Send null UIDs to apps instead of single-uid lists.\n\nPrior to this change ConnectivityManager used to patch in the UID\nof the requesting app inside the NetworkCapabilities sent to it.\nThe rationale was that the app may not know what other apps may\nuse the network, so the view it should have of the network should\nalways say the network only applies to that app.\n\nBut this has an unfortunate side effect : apps can\u0027t match the\nreceived network against a default NetworkCapabilities. Ostensibly\nthis only applies to the system because all involved calls are\n@hide, but still : system code would get some NetworkCapabilities,\nfor example using networkCapabilitiesForType, and then try to\nmatch the capabilities of an available network using\nsatisfiedByNetworkCapabilities. Because the passed network is\ndeclared to only apply to one\u0027s own UID and the UIDs of the\nNetworkCapabilities are set to null meaning \"I need this network\nto apply to all UIDs\", the answer will be \"false\".\n\nWhile this is WAI in a sense, it is very counter-intuitive that\ncode trying to match a network would be required to patch in its\nown UIDs.\nThere are three ways of fixing this :\n1. Require all apps to do the above. It\u0027s correct, but it\u0027s\n   cumbersome and counterintuitive. Multiple places in existing\n   code needs to be fixed, Tethering is an example.\n2. Write the UIDs of the caller in any NetworkCapabilities object\n   that is created. This is not very practical, because it imposes\n   the converse requirement on all NetworkAgents, which would then\n   have to clear the UIDs before they send the capabilities to\n   ConnectivityService. All NetworkAgents need to be fixed.\n3. Instead of sending an object with a list of one UID to apps,\n   send a null list. The drawback is that the networks nominally\n   look to apps like they apply to all apps. I argue this does\n   not matter ; what matters is that the UID lists do not leak.\n   Clients just see a null list of UIDs (and third party can\u0027t\n   even access them without using reflection). No other changes\n   are required besides this two-line patch.\n\nThis patch implements 3. I believe it is the saner approach, with\nboth the most intuitive behavior and the best backward compatibility\ncharacteristics, as well as the easiest change.\n\nThis does not encroach on the future plans to make the actual\nUID list available to apps with NETWORK_SETTINGS.\n\nTest: runtest frameworks-net\nChange-Id: I978d91197668119e051c24e1d04aafe1644a41cf\n"
    },
    {
      "commit": "9fda81e274e08ee1ac8e5986df1389ed2242eca8",
      "tree": "c8e0a1b13f434c1d99aab6e25d93ea74993d465a",
      "parents": [
        "d1134525fc506783c9d7e94fee6e5379b92f2038",
        "5ac8abf9ca9d77275a8aa432b7df613595d225d2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 14 03:35:37 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 14 03:35:37 2018 +0000"
      },
      "message": "Merge \"Refactor ZygoteProcess to deal in LocalSocketAddress.\""
    },
    {
      "commit": "d1134525fc506783c9d7e94fee6e5379b92f2038",
      "tree": "7ce1863512662b5e2c52322ce671108ed47abf50",
      "parents": [
        "42339c464fca2f1981b1e6285eb05ade3ac10c05",
        "175413959ad516645f460fe41499d69f769ef995"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 13 23:27:33 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 13 23:27:33 2018 +0000"
      },
      "message": "Merge \"Rename Conference#setConnectionElapsedTime to clarity.\""
    },
    {
      "commit": "9dd3a385279403ff94dd07b052424da3acd3a1f4",
      "tree": "21f47bddd868e5e444a567d28ff52f5aa88d4b8e",
      "parents": [
        "42339c464fca2f1981b1e6285eb05ade3ac10c05"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Tue Feb 06 20:43:21 2018 -0800"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Tue Feb 13 23:23:13 2018 +0000"
      },
      "message": "Copy IpSecConfig when IpSecTransforms are created\n\nThis change prevents IpSecTransforms from being inadvertently modified\nby changes to the IpSecConfig. Specifically, once the transform is\ncreated, it takes a copy of the config, rather than a reference.\n\nBug: 69385347\nTest: New tests added, and all test passing\nChange-Id: I89b8660c175ca20aa70352dcda893434ff7fd42b\n"
    },
    {
      "commit": "42339c464fca2f1981b1e6285eb05ade3ac10c05",
      "tree": "ca1ea5690126593abee8c176beba3c478895ea18",
      "parents": [
        "e42d29f31b4e4b7e993b0aa9c4392cfd1b635b7a",
        "052fbabc35c35273fe44e8ebb0772ba2259f5db7"
      ],
      "author": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Tue Feb 13 22:56:08 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 13 22:56:08 2018 +0000"
      },
      "message": "Merge \"Public EuiccManager APIs.\""
    },
    {
      "commit": "e42d29f31b4e4b7e993b0aa9c4392cfd1b635b7a",
      "tree": "2dd51d887e40a6880629e3d08074889a988659a1",
      "parents": [
        "909e9d3e494766ae415ea2e1a74667ec9b777b76",
        "abbfac26bb88ed3043fce6967e3dc2c1e68a4ad7"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 13 21:27:39 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 13 21:27:39 2018 +0000"
      },
      "message": "Merge \"Add death recipient to TelephonyRegistry.\""
    },
    {
      "commit": "052fbabc35c35273fe44e8ebb0772ba2259f5db7",
      "tree": "74de86d696dab49fa636e76ee301bbc006c970a4",
      "parents": [
        "c0c9f53175f460b7451d1b18ee0f73b24e5a2e77"
      ],
      "author": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Tue Dec 12 20:17:09 2017 -0800"
      },
      "committer": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Tue Feb 13 12:53:45 2018 -0800"
      },
      "message": "Public EuiccManager APIs.\n\nPublic EuiccManager and other related necessary files.\nMark EuiccCardManager and other related necessary files as @SystemApi.\nSolve lint errors and warnings.\n\nBug: 35851809\nTest: test on phone\nChange-Id: I8a2c78804cae56b679d311d613edca5be4bc2522\nMerged-In: I68853e134e1e31fa9b91a83af6c491a2a8cca971\n"
    },
    {
      "commit": "909e9d3e494766ae415ea2e1a74667ec9b777b76",
      "tree": "168f54418b8e065dd358071b63066d063afe6559",
      "parents": [
        "c0c9f53175f460b7451d1b18ee0f73b24e5a2e77",
        "4d7025fc1dddec5e18fac0def39a11384bf73595"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 13 19:32:01 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 13 19:32:01 2018 +0000"
      },
      "message": "Merge \"Add interfact to get phone ID from UiccSlotInfo\""
    },
    {
      "commit": "4d7025fc1dddec5e18fac0def39a11384bf73595",
      "tree": "168f54418b8e065dd358071b63066d063afe6559",
      "parents": [
        "c0c9f53175f460b7451d1b18ee0f73b24e5a2e77"
      ],
      "author": {
        "name": "Qingxi Li",
        "email": "qingxi@google.com",
        "time": "Wed Jan 31 13:54:34 2018 -0800"
      },
      "committer": {
        "name": "Qingxi Li",
        "email": "qingxi@google.com",
        "time": "Tue Feb 13 19:29:00 2018 +0000"
      },
      "message": "Add interfact to get phone ID from UiccSlotInfo\n\nBug: 72753162\nTest: TreeHugger\nMerged-In: I7733a5f60cf4535339fe9b44e99178304ccbb2c0\nChange-Id: I7733a5f60cf4535339fe9b44e99178304ccbb2c0\n"
    },
    {
      "commit": "5ac8abf9ca9d77275a8aa432b7df613595d225d2",
      "tree": "fc4933891f63ac115ac13b2c7a39dc6dc7c1581f",
      "parents": [
        "c0c9f53175f460b7451d1b18ee0f73b24e5a2e77"
      ],
      "author": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Fri Jan 26 14:26:53 2018 -0500"
      },
      "committer": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Tue Feb 13 14:23:30 2018 -0500"
      },
      "message": "Refactor ZygoteProcess to deal in LocalSocketAddress.\n\nCurrently ZygoteProcess only uses String names in the RESERVED socket\nnamespace. This CL reworks the class to use LocalSocketAddress, so that\nother socket namespaces can be used to communicate with zygotes.\n\nBug: 63749735\nTest: m (no functional change)\nMerged-In: I4146f684bfcd78b16500829d02ff54590a8b48f5\nChange-Id: I0113a7189530c2e57c48058df542057e855bae42\n"
    },
    {
      "commit": "abbfac26bb88ed3043fce6967e3dc2c1e68a4ad7",
      "tree": "61252a7573c73230acdaadaa027394b491dd9140",
      "parents": [
        "1168c31c4a554d37e405c2f940707de0f91eab57"
      ],
      "author": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Mon Feb 12 19:15:59 2018 -0800"
      },
      "committer": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Tue Feb 13 11:06:25 2018 -0800"
      },
      "message": "Add death recipient to TelephonyRegistry.\n\nAdd death recipient to TelephonyRegistry so that all binders that\nconnect to TelephonyRegistry will be cleaned when they are died.\n\nTest: manual\nBug: 73107019\nChange-Id: Ib44f72b769272cef9f36f7b49097091a93bcc70e\n"
    },
    {
      "commit": "c0c9f53175f460b7451d1b18ee0f73b24e5a2e77",
      "tree": "cdc4da12f049e124222e37e1d8fe78fc19b7937d",
      "parents": [
        "e845bddb4034d2426ace75fdee224937debd19bc",
        "e669ac2520df7a4c3313da8b53705a99b5369587"
      ],
      "author": {
        "name": "hansson",
        "email": "hansson@google.com",
        "time": "Tue Feb 13 14:42:03 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 13 14:42:03 2018 +0000"
      },
      "message": "Merge \"fix misleading FATAL EXCEPTION IN SYSTEM PROCESS log\""
    },
    {
      "commit": "e669ac2520df7a4c3313da8b53705a99b5369587",
      "tree": "09642856e34a924e9803d3bd218b01e720b14f02",
      "parents": [
        "a869d143435d19153cb2c01d2c972b661e817bfa"
      ],
      "author": {
        "name": "yuanhuihui",
        "email": "yuanhuihui@xiaomi.com",
        "time": "Sat Mar 18 19:34:31 2017 +0800"
      },
      "committer": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Tue Feb 13 12:52:38 2018 +0000"
      },
      "message": "fix misleading FATAL EXCEPTION IN SYSTEM PROCESS log\n\nThere will be the following situations about mApplicationObject：\n\n1) fork app process will invoke ActivityThread.main(),\nthen set mApplicationObject.\n\n2) fork system_server， don\u0027t set mApplicationObject value.\n\n3) using app_process fork process except zygote, will inovke RuntimeInit,\ndon\u0027t set mApplicationObject value。\n\nFor example using command as below:\napp_process /system/bin com.android.commands.am.Am \"$@\",\n\nif this process throw uncaught exception，will output FATAL EXCEPTION IN SYSTEM PROCESS log，\nit\u0027s not in system process but in normal process。\n\nso should add condition： Process.SYSTEM_UID \u003d\u003d Process.myUid()\n\nBUG: 72759350\nTest: manual\n\nChange-Id: Ie8d769e4149cd9b938577058de871c4f8db9efe5\nSigned-off-by: yuanhuihui \u003cyuanhuihui@xiaomi.com\u003e\n"
    },
    {
      "commit": "e845bddb4034d2426ace75fdee224937debd19bc",
      "tree": "04a10dc808b5c790ac6a2583e4aa980c5878e915",
      "parents": [
        "0872f6d5e3454430e316a854ff892510934f85d8",
        "7c3ddcf0a127e0b1a2de7beffde808093f3808cf"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 13 07:09:36 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 13 07:09:36 2018 +0000"
      },
      "message": "Merge \"Updates to Telecom API docs for clarity.\""
    },
    {
      "commit": "7c3ddcf0a127e0b1a2de7beffde808093f3808cf",
      "tree": "e3fe85d1f83b06f34bf34c7e4cebec305e881866",
      "parents": [
        "af5b90ff458fcbf923542bc0e79b290b83d265ab"
      ],
      "author": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Thu Feb 08 11:28:33 2018 -0800"
      },
      "committer": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Mon Feb 12 15:45:46 2018 -0800"
      },
      "message": "Updates to Telecom API docs for clarity.\n\n- Update Connection onAnswer/onReject docs to make it more clear for\na self-managed connectionservice that these methods could be called by\nthe framework or by a car mode in call service.\n- Update the Connection onShowIncomingCallUI method to take into account\nthe new concurrent calling capabilities in P.\n\nTest: Docs only change\nBug: 73112552\nChange-Id: Icb47aa15d03d4bfc05380948e30686317124301e\n"
    },
    {
      "commit": "0872f6d5e3454430e316a854ff892510934f85d8",
      "tree": "b71b3ad5c4f4b97fe32b61365165e507605e94d4",
      "parents": [
        "492f249dbb87de3d820168af8e8d3c327b14ba10",
        "fdbe7d1ca90ac40f9b629524d9aea26e59899c50"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Feb 12 22:44:39 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 12 22:44:39 2018 +0000"
      },
      "message": "Merge \"Don\u0027t put android.os.Parcelable in framework.aidl\""
    },
    {
      "commit": "492f249dbb87de3d820168af8e8d3c327b14ba10",
      "tree": "941b82658ce6afc0e5c7c80ebc0c591f1f3f0c8d",
      "parents": [
        "f27242dbd6aa4736070f5d82d750f30bee674a0d",
        "54241741526ff6a7eac04acf2ac345b2ff5cfd16"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Mon Feb 12 22:39:00 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 12 22:39:00 2018 +0000"
      },
      "message": "Merge \"Added owners\""
    },
    {
      "commit": "175413959ad516645f460fe41499d69f769ef995",
      "tree": "e5fbcc92513fc82c7085dcfe27094ceffcc23f05",
      "parents": [
        "af5b90ff458fcbf923542bc0e79b290b83d265ab"
      ],
      "author": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Thu Feb 01 08:58:38 2018 -0800"
      },
      "committer": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Mon Feb 12 14:35:15 2018 -0800"
      },
      "message": "Rename Conference#setConnectionElapsedTime to clarity.\n\nChange name of conference connection elapsed time method to make it more\nclear what it is for.  Updated documentation of this method and its\ncompanion to make it more clear what they are for.\n\nTest: Compile - this is a docs and naming change only.\nBug: 70639525\nChange-Id: I02662cb0331cba0d1fe2d4353438a68f334f9192\n"
    },
    {
      "commit": "54241741526ff6a7eac04acf2ac345b2ff5cfd16",
      "tree": "66a8fc0ab603702733b7b145a01bbb05f5beec59",
      "parents": [
        "efccc1babec588babf18624fe943c29b11a2e006"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Mon Feb 12 12:07:34 2018 -0800"
      },
      "committer": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Mon Feb 12 12:07:34 2018 -0800"
      },
      "message": "Added owners\n\nTest: Build\nChange-Id: I95104f646bc054e4ad9a6807d6e3df69f1e00d75\n"
    },
    {
      "commit": "f27242dbd6aa4736070f5d82d750f30bee674a0d",
      "tree": "6e0485e12dae91739b33372e6bed4687db006b0b",
      "parents": [
        "a869d143435d19153cb2c01d2c972b661e817bfa",
        "f9ddcf69b2baff3cdb2272713a167cfb64166640"
      ],
      "author": {
        "name": "Jordan Liu",
        "email": "jminjie@google.com",
        "time": "Mon Feb 12 18:17:24 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 12 18:17:24 2018 +0000"
      },
      "message": "Merge \"Overload setTelephonyProperty without phone ID\""
    }
  ],
  "next": "a869d143435d19153cb2c01d2c972b661e817bfa"
}
