)]}'
{
  "log": [
    {
      "commit": "d5f1de19f49422f79ad23251cbabbe855cff5efb",
      "tree": "87401f42d58b3bdc3c4e099b3682ad7c114989fe",
      "parents": [
        "475fe28c505b5428280ec5ffc271c7bbb7e7ac25"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Thu Dec 21 11:00:05 2017 -0800"
      },
      "committer": {
        "name": "Xiangyu/Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Wed Jan 24 19:13:45 2018 +0000"
      },
      "message": "Added network service interface\n\nThe interface for mobile network service. This is the base class\nfor vendor or first party data service provider to implement\nthe network service for cellular or IWLAN network support.\n\nTest: Manual\nbug: 64132030\nChange-Id: Ia358cbb18fc6d15dcc45c75f14b7c952f899e101\n"
    },
    {
      "commit": "475fe28c505b5428280ec5ffc271c7bbb7e7ac25",
      "tree": "6e2101a466d92f06042fca435fcc2696a7afdd1f",
      "parents": [
        "0aafefb1132b8a08afa46e5771616978fc043275",
        "0fe58a93dfa4dbefd9d7d2da066774d9a648ec74"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Jan 24 18:10:55 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 18:10:55 2018 +0000"
      },
      "message": "Merge \"Add tunnel-mode calls to netd in IpSecService\""
    },
    {
      "commit": "0aafefb1132b8a08afa46e5771616978fc043275",
      "tree": "cddf09bda0a966d5ec73ecf8ed6673c63c148047",
      "parents": [
        "c584d2772d6579904868dab3562720bfec51112c",
        "8dd33941a455bab025beaa549b78c094e81226e2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 24 18:03:21 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 18:03:21 2018 +0000"
      },
      "message": "Merge \"BT-HFP: Update Bluetooth headset state handler to Multi-HFP\""
    },
    {
      "commit": "8dd33941a455bab025beaa549b78c094e81226e2",
      "tree": "cddf09bda0a966d5ec73ecf8ed6673c63c148047",
      "parents": [
        "c584d2772d6579904868dab3562720bfec51112c"
      ],
      "author": {
        "name": "Jack He",
        "email": "siyuanh@google.com",
        "time": "Wed Jan 17 15:45:12 2018 -0800"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@google.com",
        "time": "Wed Jan 24 16:27:15 2018 +0000"
      },
      "message": "BT-HFP: Update Bluetooth headset state handler to Multi-HFP\n\n* When multiple headset devices are connected at the same time, at most one\n  device can be used for SCO audio at any time. This device is called\n  Active Device and is indicated by either\n  BluetoothHeadset.getActiveDevice() or\n  BluetoothHeadset.ACTIVE_DEVICE_CHANGED intent. It can also be set\n  through BluetoothHeadset.setActiveDevice(BluetoothDevice) internal API.\n* This change let AudioService to listen to ACTIVE_DEVICE_CHANGED intent\n  instead of CONNECTION_STATE_CHANGED intent since it is the active\n  device that AudioService cares about, not the list of connected\n  devices.\n* Everytime a new active device is set, AudioService will treat the old\n  one (if not null) as disconnected and call disconnection methods in\n  audio framework and the new active device is regarded as newly\n  connected and connection methods will be called by AudioService.\n* When disconnectHeadset() is called, active device will be set to null\n\nBug: 71875419\nTest: compile, connect multiple HFP devices and switch active device\n      among them\nChange-Id: I148cca079d36a2dfc6a46b8d42ba69821c9c6de3\n"
    },
    {
      "commit": "c584d2772d6579904868dab3562720bfec51112c",
      "tree": "ae8e04e9b0555e2d0ba80228b18c4e1aeec86d8b",
      "parents": [
        "1f568c14acdff2270b981885966032c73b24399a",
        "5c6b3a35577d661e1bb9044502995f0c31da81fd"
      ],
      "author": {
        "name": "Eric Schwarzenbach",
        "email": "easchwar@google.com",
        "time": "Wed Jan 24 16:17:53 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 16:17:53 2018 +0000"
      },
      "message": "Merge \"Add PhysicalChannelConfig.\""
    },
    {
      "commit": "1f568c14acdff2270b981885966032c73b24399a",
      "tree": "af15d3456ce9d65a52a014cb5db632cb874c04f5",
      "parents": [
        "4152497b4b394ed1f00b680a5b87596ec4c44c33",
        "5c9dcc0e7202884b3a4a54c28f30854f377fde29"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jan 24 10:44:10 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 10:44:10 2018 +0000"
      },
      "message": "Merge \"Revert \"Add getUiccSlots() and switchSlots() in TelephonyManager.\"\""
    },
    {
      "commit": "4152497b4b394ed1f00b680a5b87596ec4c44c33",
      "tree": "4e5045956cf1b1a0a3a63fb85d1f8c7f9cde9fe2",
      "parents": [
        "f811dff3bca4473c9cc84a742f59ebb35769c677",
        "9f17dfcba6f286bca0fb47c32105c07328a4cc5c"
      ],
      "author": {
        "name": "Benoit Lamarche",
        "email": "benoitlamarche@google.com",
        "time": "Wed Jan 24 09:59:28 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 09:59:28 2018 +0000"
      },
      "message": "Merge \"Fail when there is an ASM error\""
    },
    {
      "commit": "5c9dcc0e7202884b3a4a54c28f30854f377fde29",
      "tree": "312560ba6d96405cb2b3fe13323d2b003022e556",
      "parents": [
        "2f87d7b2ee5097eae4e2a62858fbe221dac857f6"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jan 24 09:11:40 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jan 24 09:11:40 2018 +0000"
      },
      "message": "Revert \"Add getUiccSlots() and switchSlots() in TelephonyManager.\"\n\nAOSP build broken.\n\nBug: 71914112\n\nThis reverts commit 2f87d7b2ee5097eae4e2a62858fbe221dac857f6.\n\nChange-Id: I53537a6da7616fe6dbbb79927b32720bbeaf1f69\n"
    },
    {
      "commit": "0fe58a93dfa4dbefd9d7d2da066774d9a648ec74",
      "tree": "9aa516f7f4d91c88c2d939e459bc87b753013ff1",
      "parents": [
        "f811dff3bca4473c9cc84a742f59ebb35769c677"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Fri Jan 19 17:36:02 2018 -0800"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Jan 24 08:19:55 2018 +0000"
      },
      "message": "Add tunnel-mode calls to netd in IpSecService\n\nAdds calls to relevant netd methods in IpSecService, enabling Tunnel\nmode functionality.\n\nBug: 63588681\nTest: Compiles, passing CTS + unit tests\nChange-Id: I6deb68584cddb03f21bd76370d4ef69cadc1bf16\n"
    },
    {
      "commit": "f811dff3bca4473c9cc84a742f59ebb35769c677",
      "tree": "edaf414a9ea4cf098e1d91c0d941f7f5b9f2dbd8",
      "parents": [
        "73f79ceae991d4e8b8d28c464fcf11a296877a68",
        "8149f6eb6c0280078dc41d72027d1241e875ea02"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Jan 24 07:25:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 07:25:04 2018 +0000"
      },
      "message": "Merge \"Add TunnelInterface API and KernelResourceRecords\""
    },
    {
      "commit": "8149f6eb6c0280078dc41d72027d1241e875ea02",
      "tree": "edaf414a9ea4cf098e1d91c0d941f7f5b9f2dbd8",
      "parents": [
        "73f79ceae991d4e8b8d28c464fcf11a296877a68"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Thu Jan 18 18:31:45 2018 -0800"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Jan 24 07:24:27 2018 +0000"
      },
      "message": "Add TunnelInterface API and KernelResourceRecords\n\nThis change adds one KernelResourceRecord type (TunnelInterfaceRecord),\nand adds methods for the creation of TunnelInterfaces, as well as the\napplication of Transforms to the given TunnelInterfaces\n\nAs part of the generation of ikeys/okeys, a ReserveKeyTracker manages a\njava bitset to avoid collisions and reserve/release keys.\n\nBug: 63588681\nTest: Compiles, CTS, unit tests all pass on AOSP_marlin\nChange-Id: I9e9b6455e27073acd4491eae666aa966b3b10e0f\n"
    },
    {
      "commit": "5c6b3a35577d661e1bb9044502995f0c31da81fd",
      "tree": "823ce070b43b15c0f07a4d357ac1aba28f1d1f58",
      "parents": [
        "6e032246975e08c4264bd711a0ced6e1bbf74c47"
      ],
      "author": {
        "name": "Eric Schwarzenbach",
        "email": "easchwar@google.com",
        "time": "Thu Jan 18 17:15:51 2018 -0800"
      },
      "committer": {
        "name": "Eric Schwarzenbach",
        "email": "easchwar@google.com",
        "time": "Tue Jan 23 23:08:56 2018 -0800"
      },
      "message": "Add PhysicalChannelConfig.\n\nAdds a field to PhoneStateListener to listen for changes to the\nPhysicalChannelConfig list.\n\nBug: 72117533\nTest: make\nChange-Id: I353a4b90354d54948bce75968fb5fe1803efd093\n"
    },
    {
      "commit": "73f79ceae991d4e8b8d28c464fcf11a296877a68",
      "tree": "9c85e407faf22cc6bbe39282bae98c53e84e7167",
      "parents": [
        "8fd5b7e1c3efc51b10911be3a1f1cc98e8402556",
        "0b611f496e9dd6be62419d8cd7f2d164efefad1c"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Jan 24 05:53:29 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 05:53:29 2018 +0000"
      },
      "message": "Merge \"Add xfrm mark in IpSecConfig\""
    },
    {
      "commit": "8fd5b7e1c3efc51b10911be3a1f1cc98e8402556",
      "tree": "4b2240585a86c574313d4e81ba8d8468ed5732fd",
      "parents": [
        "eb9452a08def7c928a32eda3f4634f82448fa6ab",
        "2f87d7b2ee5097eae4e2a62858fbe221dac857f6"
      ],
      "author": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Wed Jan 24 05:08:19 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 05:08:19 2018 +0000"
      },
      "message": "Merge \"Add getUiccSlots() and switchSlots() in TelephonyManager.\""
    },
    {
      "commit": "eb9452a08def7c928a32eda3f4634f82448fa6ab",
      "tree": "5d32247fe3133528dd6dfad42b25efed88582c5f",
      "parents": [
        "6568170b32100986a65a042facd78b3dcaf1c5e7",
        "866f494dc2060c57ff43fb1cc465ed9159c88441"
      ],
      "author": {
        "name": "Cassie Han",
        "email": "xih@google.com",
        "time": "Wed Jan 24 04:55:32 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 04:55:32 2018 +0000"
      },
      "message": "Merge \"Move android.provider.Telephony.SECRET_CODE to Telephony.Intents.\""
    },
    {
      "commit": "6568170b32100986a65a042facd78b3dcaf1c5e7",
      "tree": "ea9394e8b6a1dd79aa0e5f29fd4678a43f60c11e",
      "parents": [
        "6e032246975e08c4264bd711a0ced6e1bbf74c47",
        "dda156ab0c5d66ad82bdcf76cda07cbc0a9c8a2e"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Wed Jan 24 04:09:44 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 04:09:44 2018 +0000"
      },
      "message": "Merge changes I3b16caad,Iaf5ea7ab,I09a94042,I69a39039,I35300309, ...\n\n* changes:\n  Let network requests see VPNs.\n  Move constants into a new file.\n  Make sure listen requests from VPN apps see their own networks\n  Add a test for new UID checking code.\n  Remove UID_RANGES_ADDED and REMOVED.\n  Move VPN allowed UIDs into NetworkCapabilities.\n  Pre-import to remove a conflict.\n"
    },
    {
      "commit": "6e032246975e08c4264bd711a0ced6e1bbf74c47",
      "tree": "949a8be17087ca6c3206d6bda88f97c14b4be948",
      "parents": [
        "a85291bfcfc0e4028328b492b0c8917853f27cb0",
        "93afbf258f554e980b58c3c67d55ebbb3e4eb915"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 24 04:08:29 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 04:08:29 2018 +0000"
      },
      "message": "Merge changes from topic \"bpfStats\"\n\n* changes:\n  Use /proc/net/dev to get stats summary\n  Add bpf support for NetworkStatsFactory\n  Add BPF support for NetworkStatsService\n"
    },
    {
      "commit": "a85291bfcfc0e4028328b492b0c8917853f27cb0",
      "tree": "0016f8cb97f0fbdbe4ee3d45443bf2f0e6da54d7",
      "parents": [
        "d056f32bd9c7176742d171a4651ffbd6c8e617e0",
        "c2779f56fba24fb05d652f2bfd61ee0f608789ea"
      ],
      "author": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Wed Jan 24 04:06:40 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 04:06:40 2018 +0000"
      },
      "message": "Merge \"Add cardId in EuiccCardManager API.\""
    },
    {
      "commit": "d056f32bd9c7176742d171a4651ffbd6c8e617e0",
      "tree": "9d3e772cec35cf9b9d7758f43c9e085068b591cc",
      "parents": [
        "2378a2ca0b35486eebd51780569a75fa42cd4029",
        "e0d448f31eb9f7e63d13ef45b04853d95c00670a"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Jan 24 01:42:30 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 01:42:30 2018 +0000"
      },
      "message": "Merge \"Expose applyTunnelModeTransform as a system API\""
    },
    {
      "commit": "c2779f56fba24fb05d652f2bfd61ee0f608789ea",
      "tree": "84ce75e96f3ac45a28a0be931a4e13ed0a29436d",
      "parents": [
        "572f65fb5821a9e7459a5d90344f05f5cf3f4227"
      ],
      "author": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Tue Jan 23 16:49:22 2018 -0800"
      },
      "committer": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Tue Jan 23 17:11:30 2018 -0800"
      },
      "message": "Add cardId in EuiccCardManager API.\n\nRemoved getEid() API.\n\nBug: 38206971\nTest: test on phone\nChange-Id: I7e484f889a780900acd3a05a96fbbc632e1ec682\n"
    },
    {
      "commit": "2378a2ca0b35486eebd51780569a75fa42cd4029",
      "tree": "d1380cdc20f549a113202307bba21f172df7da94",
      "parents": [
        "afd65d9d1cd4c61b4992fe07f10568e5da003c09",
        "2c2c711a1d7535a966b4cf0b271a3b656823d69a"
      ],
      "author": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Wed Jan 24 01:09:44 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 01:09:44 2018 +0000"
      },
      "message": "Merge \"Make getIEuiccContronller() protected and non-static for CTS.\""
    },
    {
      "commit": "afd65d9d1cd4c61b4992fe07f10568e5da003c09",
      "tree": "0c4e39b53cd3c3d90cefdf040eb1ba80542056e2",
      "parents": [
        "fb24180fe09de48259c8c093065516af6a6c7d52",
        "8949cc2d1a9ffa193fcfee1a2ef27fc88f0b3efb"
      ],
      "author": {
        "name": "Xiangyu/Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Tue Jan 23 23:39:10 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 23 23:39:10 2018 +0000"
      },
      "message": "Merge \"Add TransportType in AccessNetworkConstants.java\""
    },
    {
      "commit": "2f87d7b2ee5097eae4e2a62858fbe221dac857f6",
      "tree": "abe3ee664e2d17af3f75532402a8b82a11cee291",
      "parents": [
        "572f65fb5821a9e7459a5d90344f05f5cf3f4227"
      ],
      "author": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Thu Jan 11 18:47:04 2018 -0800"
      },
      "committer": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Tue Jan 23 15:26:34 2018 -0800"
      },
      "message": "Add getUiccSlots() and switchSlots() in TelephonyManager.\n\nBug: 71914112\nTest: test on phone\nChange-Id: Ib7e9e40e5ecda48bdcd1f332dc7d6c422c08d942\n"
    },
    {
      "commit": "e0d448f31eb9f7e63d13ef45b04853d95c00670a",
      "tree": "ec1fd6b73015a1f91f17b45d81b140b25668b027",
      "parents": [
        "fb24180fe09de48259c8c093065516af6a6c7d52"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Tue Jan 23 11:01:28 2018 -0800"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Tue Jan 23 23:25:54 2018 +0000"
      },
      "message": "Expose applyTunnelModeTransform as a system API\n\nSimple change to expose systemAPI for applyTunnelModeTransform\n\nBug: 36033193\nTest: All CTS, unit tests passing\nChange-Id: I2d857c048bc0dc80c3949387f946b1f5adf0527e\n"
    },
    {
      "commit": "fb24180fe09de48259c8c093065516af6a6c7d52",
      "tree": "e491e76b677c0287681a6b63e86252879aef1ab1",
      "parents": [
        "7d441c9b27235973069aa1b9b7c3386e7df5a533",
        "5c40d8914d85708779e8df1c49a7bea2750205cb"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Tue Jan 23 23:23:48 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 23 23:23:48 2018 +0000"
      },
      "message": "Merge changes from topic \"signal-strength-cleanup\"\n\n* changes:\n  Fix getAsuLevel returns \"99\" in Lte and TdScdma.\n  Cleanup SignalStrength Parcel\n"
    },
    {
      "commit": "866f494dc2060c57ff43fb1cc465ed9159c88441",
      "tree": "e5d0d979d03b00296914af2fc48a9f4ac92a65b6",
      "parents": [
        "940c0341f00872e5e19ea28cc8389b9bfd1c3abc"
      ],
      "author": {
        "name": "Cassie",
        "email": "xih@google.com",
        "time": "Fri Jan 19 17:23:36 2018 -0800"
      },
      "committer": {
        "name": "Cassie",
        "email": "xih@google.com",
        "time": "Tue Jan 23 15:06:53 2018 -0800"
      },
      "message": "Move android.provider.Telephony.SECRET_CODE to Telephony.Intents.\n\nBug: 69616728\nTest: Basic telephony sanity\nChange-Id: Ia053f9be082ceb139a284598ee2398a25daa7e08\n"
    },
    {
      "commit": "7d441c9b27235973069aa1b9b7c3386e7df5a533",
      "tree": "e20a3ddfed9ddd798567622e1fef3bcb70c81b52",
      "parents": [
        "572f65fb5821a9e7459a5d90344f05f5cf3f4227",
        "2a4d0c8d5023f9af752d80a1cce96f391845f02c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 23 19:43:25 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 23 19:43:25 2018 +0000"
      },
      "message": "Merge \"Combined flags of data service requests into one reason param\""
    },
    {
      "commit": "2c2c711a1d7535a966b4cf0b271a3b656823d69a",
      "tree": "fbd975797c41f0182d6a52475c72d1571137d9c0",
      "parents": [
        "572f65fb5821a9e7459a5d90344f05f5cf3f4227"
      ],
      "author": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Fri Jan 19 10:27:56 2018 -0800"
      },
      "committer": {
        "name": "Holly Jiuyu Sun",
        "email": "jiuyu@google.com",
        "time": "Tue Jan 23 10:35:37 2018 -0800"
      },
      "message": "Make getIEuiccContronller() protected and non-static for CTS.\n\nTest: test on phone\nChange-Id: I706a0a9e064a0f2f91674cb2ff38a5929eaaf627\n"
    },
    {
      "commit": "5c40d8914d85708779e8df1c49a7bea2750205cb",
      "tree": "f611d23a3b068f8ac240ea68196e08dbaa76db3f",
      "parents": [
        "9becf4b3346ba2501f3af62d74cef1f4a5797ce8"
      ],
      "author": {
        "name": "yifan.bai",
        "email": "yifan.bai@spreadtrum.com",
        "time": "Fri Oct 20 10:25:11 2017 +0800"
      },
      "committer": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Tue Jan 23 18:32:22 2018 +0000"
      },
      "message": "Fix getAsuLevel returns \"99\" in Lte and TdScdma.\n\nGetAsuLevel method judges valid signal by\ngetLteLevel/getTdScdmaLevel. However, level is\nSIGNAL_STRENGTH_NONE_OR_UNKNOWN does not mean not in\nLte/TdScdma.\nFor example, if mLteRsrp is in (threshRsrp[1],\nthreshRsrp[0]], getLteLevel would return\nSIGNAL_STRENGTH_NONE_OR_UNKNOWN. But this only\nmeans Lte signal is very weak, and ASU should be\n(mLteRsrp + 140) not \"99\" (3GPP 27.007 Sec 8.69).\n\nBug: 72116430\nTest: Build\nChange-Id: If930c3e3d23a9af7b2e51e3560cc28607a6328c0\n"
    },
    {
      "commit": "9becf4b3346ba2501f3af62d74cef1f4a5797ce8",
      "tree": "716f1360b85e86394dbd41f6c7f553c1704ba02a",
      "parents": [
        "572f65fb5821a9e7459a5d90344f05f5cf3f4227"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Thu Jan 18 16:45:40 2018 -0800"
      },
      "committer": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Tue Jan 23 18:25:44 2018 +0000"
      },
      "message": "Cleanup SignalStrength Parcel\n\nClean up the SignalStrength parcel. This CL\nremoves redundant constructors, simplifies the\noverall initialization process, and stratifies\nthe components of the parcel into 2 separate\nparts: the strength values from RIL, and the\nconfig values provided by the platform.\n\nBug: 72116430\nTest: runtest frameworks-telephony\nChange-Id: Id7d2339362270b3911e96094275e1e545d6b581c\n"
    },
    {
      "commit": "8949cc2d1a9ffa193fcfee1a2ef27fc88f0b3efb",
      "tree": "6c8387f1fa302183bed1f9c2dde80e6489f6cf24",
      "parents": [
        "e8fc3d239979b90187e5f10f6e92494cde622319"
      ],
      "author": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Mon Jan 22 16:00:29 2018 -0800"
      },
      "committer": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Tue Jan 23 10:20:16 2018 -0800"
      },
      "message": "Add TransportType in AccessNetworkConstants.java\n\nBug: 64132030\nTest: build\nChange-Id: I916a0b889110195d23b2a531308171cf4ea74f0c\n"
    },
    {
      "commit": "572f65fb5821a9e7459a5d90344f05f5cf3f4227",
      "tree": "312560ba6d96405cb2b3fe13323d2b003022e556",
      "parents": [
        "0a1dd194aaa0369bb87731df708e86229a7d8e40",
        "bceb382572317df111d94f31edab70d4064ce033"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 23 18:14:00 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 23 18:14:00 2018 +0000"
      },
      "message": "Merge \"Use the correct value for Process.WEBVIEW_ZYGOTE_UID.\""
    },
    {
      "commit": "0a1dd194aaa0369bb87731df708e86229a7d8e40",
      "tree": "d4c5e7d472a205dfaa968fc4ca19bc3536f53eb6",
      "parents": [
        "cdc0a084d18baded7067a3af8723026e8a00bc1b",
        "e6b42773e8c079d0d41814d3455803d627dd1e3a"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Tue Jan 23 18:00:06 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 23 18:00:06 2018 +0000"
      },
      "message": "Merge \"Add checks to ensure SPIs are not reused\""
    },
    {
      "commit": "cdc0a084d18baded7067a3af8723026e8a00bc1b",
      "tree": "4cba091feb340d931d84d4ef084c33bb160196ee",
      "parents": [
        "df984fae2656104d84fec8fa876f2236d290da39",
        "c0a2e5f05d97fe527de4694fa3fe5ea43eca939d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 23 18:00:00 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 23 18:00:00 2018 +0000"
      },
      "message": "Merge \"Added new slot status related broadcast.\""
    },
    {
      "commit": "df984fae2656104d84fec8fa876f2236d290da39",
      "tree": "196e5130866bccbebf1131ccd6b7fbafca6dec15",
      "parents": [
        "bf996dd479d933b1e6be8fae50d1517229047674",
        "d15c937f972b08e62516f361cf6bbe95b64132ce"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 23 15:22:18 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 23 15:22:18 2018 +0000"
      },
      "message": "Merge changes from topic \"multipath-datausage-backport\"\n\n* changes:\n  Support passing a template to NetworkStatsManager queries.\n  Add metered, roaming, and defaultNetwork info to NetworkTemplate.\n  Unbreak frameworks-net tests broken by missing libutilscallstack.\n  Disable IpConnectivityMetricsTest.\n  Add the defaultNetwork element to the netstats.proto.\n  Add getDefaultNetwork to the NetworkStats public API.\n"
    },
    {
      "commit": "dda156ab0c5d66ad82bdcf76cda07cbc0a9c8a2e",
      "tree": "337139f4421aaf2427905a0d6189463a87c1dde4",
      "parents": [
        "918a68b3ca3d375335691230cc8fd7c974403717"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Wed Jan 10 21:19:32 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Jan 23 21:38:00 2018 +0900"
      },
      "message": "Let network requests see VPNs.\n\nTest: runtest frameworks-net\nTest: also tested with VPN app\nTest: also cts passing\nChange-Id: I3b16caad7787c3c1f2921ca1583815c89efbadc5\n"
    },
    {
      "commit": "918a68b3ca3d375335691230cc8fd7c974403717",
      "tree": "c32a26203992a4316905fea10f42ba2d0cf7cd15",
      "parents": [
        "f474fc3ac1bf45e658431c665418ae508458e1d9"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Jan 19 17:00:47 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Jan 23 21:38:00 2018 +0900"
      },
      "message": "Move constants into a new file.\n\nAlso audit all constants, make some private, annotate some\nwith @VisibleForTesting.\n\nTest: runtest framework \u0026\u0026 cts\nChange-Id: Iaf5ea7abd36fd8d544dcc84654f6cb529196d654\n"
    },
    {
      "commit": "f474fc3ac1bf45e658431c665418ae508458e1d9",
      "tree": "b05b692709fe02c286274882c519e561bc92d1ae",
      "parents": [
        "0b214afb58263f79209d9b633bbfd324525d951e"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Wed Jan 17 15:10:05 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Jan 23 21:38:00 2018 +0900"
      },
      "message": "Make sure listen requests from VPN apps see their own networks\n\nTest: runtest frameworks-net\nTest: CTS pass, including with the next patch which is what this\n      actually matters for\n\nChange-Id: I09a94042acbefa24ab884f95326e30d6ab280b82\n"
    },
    {
      "commit": "0b214afb58263f79209d9b633bbfd324525d951e",
      "tree": "133358eab2bf5f6c8bc8b56c988d23bfda9f225f",
      "parents": [
        "f213ca1345211b6e550e638230bd66e628acb6be"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Jan 12 17:22:49 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Jan 23 21:38:00 2018 +0900"
      },
      "message": "Add a test for new UID checking code.\n\nTest: manual, this is a new test and it passes\nChange-Id: I69a39039647ec05f970700e36c5f1e1e6e110f4a\n"
    },
    {
      "commit": "f213ca1345211b6e550e638230bd66e628acb6be",
      "tree": "1485e18c51f3c76f974b4b199dd60d4b9b1bbbbc",
      "parents": [
        "ecacd5e00bccb7896d0f7cf81115a503584bce43"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Jan 16 18:43:05 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Jan 23 21:38:00 2018 +0900"
      },
      "message": "Remove UID_RANGES_ADDED and REMOVED.\n\nTest: runtest frameworks-net\nTest: also tested with VPN app\nTest: also cts passing\nChange-Id: I3530030996daeba05a8f2fffc5c6e21ed62e3f40\n"
    },
    {
      "commit": "ecacd5e00bccb7896d0f7cf81115a503584bce43",
      "tree": "95726cfaf2165e8db615e5954bd9dbd6cb26d9db",
      "parents": [
        "ce1a9d8fd74ef102898a2723cd167697e271f710"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Wed Dec 27 14:23:31 2017 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Jan 23 21:38:00 2018 +0900"
      },
      "message": "Move VPN allowed UIDs into NetworkCapabilities.\n\nTest: runtest frameworks-net\nTest: also new specific tests for this new code\nTest: also tested with VPN app\nTest: also cts passing\nChange-Id: If0311bae2bf99dedac959febadecf4f92f3064b8\n"
    },
    {
      "commit": "ce1a9d8fd74ef102898a2723cd167697e271f710",
      "tree": "db4876f550bb73aecca16ad7c54c2d23d380f0a5",
      "parents": [
        "bf996dd479d933b1e6be8fae50d1517229047674"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Jan 23 21:25:37 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Jan 23 21:38:00 2018 +0900"
      },
      "message": "Pre-import to remove a conflict.\n\nTest: compiles and passes checkstyle\nChange-Id: I1ffdd88e6268fee0cf88992420ab21eb42928957\n"
    },
    {
      "commit": "d15c937f972b08e62516f361cf6bbe95b64132ce",
      "tree": "196e5130866bccbebf1131ccd6b7fbafca6dec15",
      "parents": [
        "0f9bce6883f2bbf1de1620d4014f037063d6d7b1"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Mon Jan 22 21:00:49 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 23 18:38:48 2018 +0900"
      },
      "message": "Support passing a template to NetworkStatsManager queries.\n\nCurrently, NetworkStatsManager queries and callbacks only allow\nselecting network traffic based on network identifiers:\nnetworkType, subscriptionId and networkId.  The code ends up\nconverting these into a template under the hood.\n\nNow that templates can express more fine-grained queries (e.g.,\nselect only roaming traffic, or select only traffic that\u0027s not\non the default network) add a hidden method to pass in a\ntemplate. This should have no security implications, as all the\naccess controls are performed in NetworkStatsService.\n\nBug: 35142602\nTest: android.app.usage.cts.NetworkUsageStatsTest passes\nChange-Id: Iab4afa26b34544299d2a9c501c1b0feb470e90a9\nMerged-In: Iab4afa26b34544299d2a9c501c1b0feb470e90a9\n"
    },
    {
      "commit": "0f9bce6883f2bbf1de1620d4014f037063d6d7b1",
      "tree": "8933d382ff7233a78142d08cc4de78679898adaf",
      "parents": [
        "f7fab104f92be481ec1723b08eef6b25e17af11e"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Mon Jan 22 11:54:46 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 23 18:38:48 2018 +0900"
      },
      "message": "Add metered, roaming, and defaultNetwork info to NetworkTemplate.\n\nThis will allow data usage clients to query for and receive\ncallbacks on data usage matching these conditions.\n\nBug: 35142602\nTest: atest FrameworksNetTests\nChange-Id: I4d985a2734eeab7ee454c09cc2098b6b3c671c23\nMerged-In: I4d985a2734eeab7ee454c09cc2098b6b3c671c23\n"
    },
    {
      "commit": "f7fab104f92be481ec1723b08eef6b25e17af11e",
      "tree": "50a0ed9eaa9a567d7e2f8f69214cf2818f702ceb",
      "parents": [
        "b7a479c293ea2b34deac473250764d164b87da96"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Mon Jan 22 12:53:18 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 23 18:38:48 2018 +0900"
      },
      "message": "Unbreak frameworks-net tests broken by missing libutilscallstack.\n\nTest: atest FrameworksNetTest shows fewer failures\nChange-Id: Ic6f2bc18e80d91226d8d49e047e3997ffc45e45a\nMerged-In: Ic6f2bc18e80d91226d8d49e047e3997ffc45e45a\n"
    },
    {
      "commit": "b7a479c293ea2b34deac473250764d164b87da96",
      "tree": "07e79b465e180a34205bd3f7bb9376988c985a16",
      "parents": [
        "9781f785bc4d791047649d89b5fd386e722117c0"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Mon Jan 22 12:50:58 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 23 18:38:48 2018 +0900"
      },
      "message": "Disable IpConnectivityMetricsTest.\n\nThis test has been failing for a while, and we are do not have\nbandwidth to fix it during the next week.\n\nTest: make -j64 FrameworksNetTests RUN_ERROR_PRONE\u003dtrue\nTest: atest FrameworksNetTests:IpConnectivityMetricsTest\nTest: runtest -x frameworks/base/tests/net/java/com/android/server/connectivity/IpConnectivityMetricsTest.java\nChange-Id: I59d73c1773e160a726996f3ab4ad20312decc127\nMerged-In: I59d73c1773e160a726996f3ab4ad20312decc127\n"
    },
    {
      "commit": "9781f785bc4d791047649d89b5fd386e722117c0",
      "tree": "5d9e47da6817121bcd7a5e5af770821be0c61801",
      "parents": [
        "d5876bc438c26ae13ebcef295ed3eba18f14c74a"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Sat Jan 20 02:02:56 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 23 18:38:48 2018 +0900"
      },
      "message": "Add the defaultNetwork element to the netstats.proto.\n\nThis is in its own commit because AOSP has diverged from internal\nmaster.\n\nBug: 35142602\nTest: builds, boots\nChange-Id: I75fc85b961bc919e3d6c2adce6d6861c6f2c8379\nMerged-In: I75fc85b961bc919e3d6c2adce6d6861c6f2c8379\n"
    },
    {
      "commit": "d5876bc438c26ae13ebcef295ed3eba18f14c74a",
      "tree": "753b32ac98ebb9a643d06345d3d95b107ec82b63",
      "parents": [
        "bf996dd479d933b1e6be8fae50d1517229047674"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Fri Jan 19 01:12:58 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 23 18:28:07 2018 +0900"
      },
      "message": "Add getDefaultNetwork to the NetworkStats public API.\n\nThis allows an app using the public API to know whether the\ntraffic in a particular bucket was on the default network\n(i.e., the network was selected by the system), or not (i.e.,\nthe network was selected by the app).\n\nBug: 35142602\nTest: builds, boots\nTest: added coverage to NetworkUsageStatsTest CTS test, still passes\nChange-Id: I9f6669908fa119743b9c0aa0c31a03e5ebafa7db\nMerged-In: I9f6669908fa119743b9c0aa0c31a03e5ebafa7db\n"
    },
    {
      "commit": "93afbf258f554e980b58c3c67d55ebbb3e4eb915",
      "tree": "4cd78252d3a7d85ddee6e706badb6cbf2cf0c2ec",
      "parents": [
        "828f1b45fb302f68b5eb8934bf474177fa249c7c"
      ],
      "author": {
        "name": "Chenbo Feng",
        "email": "fengc@google.com",
        "time": "Thu Jan 18 19:48:52 2018 -0800"
      },
      "committer": {
        "name": "Chenbo Feng",
        "email": "fengc@google.com",
        "time": "Tue Jan 23 00:35:02 2018 -0800"
      },
      "message": "Use /proc/net/dev to get stats summary\n\nIf the qtaguid proc file is no longer exist, the device is running new\neBPF module to do traffic accounting. So the NetworkStatsFactory need to\nuse the proc/net/dev interface to get the per interface traffic stats\nsummary. Also, adding a test to verify the helper function work properly\n\nBug: 30950746\nTest: run NetworkStatsFactoryTest\nChange-Id: Ia36808bf02f1637dd41a3e7c50917b91b1a77524\n"
    },
    {
      "commit": "828f1b45fb302f68b5eb8934bf474177fa249c7c",
      "tree": "2a9daf59be1015dbb918617e0663a439c708cecc",
      "parents": [
        "aedd6a3bdcb0b63c0bd6c6f01b720cddfedd51b8"
      ],
      "author": {
        "name": "Chenbo Feng",
        "email": "fengc@google.com",
        "time": "Mon Nov 20 17:03:59 2017 -0800"
      },
      "committer": {
        "name": "Chenbo Feng",
        "email": "fengc@google.com",
        "time": "Tue Jan 23 00:34:53 2018 -0800"
      },
      "message": "Add bpf support for NetworkStatsFactory\n\nAdd the native method used to read the detail information of network\nstats from bpf maps. The native method of NetworkStatsFactory should\nchoose the correct implementation to get the stats detail depending on\nthe kernel version. Currently the bpf result is printed as a reference\nand the actual behavior of NetworkStatsFactory should not change.\n\nTest: NetworkStatsFactory related cts test should not fail.\nBug: 30950746\nChange-Id: I4715a23559b5b2306bd556cea0431f0ed172a993\n"
    },
    {
      "commit": "aedd6a3bdcb0b63c0bd6c6f01b720cddfedd51b8",
      "tree": "4f62304b75620a741b55f13c35c9c9d5334253a3",
      "parents": [
        "bf996dd479d933b1e6be8fae50d1517229047674"
      ],
      "author": {
        "name": "Chenbo Feng",
        "email": "fengc@google.com",
        "time": "Mon Nov 20 18:23:46 2017 -0800"
      },
      "committer": {
        "name": "Chenbo Feng",
        "email": "fengc@google.com",
        "time": "Mon Jan 22 23:25:11 2018 -0800"
      },
      "message": "Add BPF support for NetworkStatsService\n\nAdd the native implementation for NetworkStatsService to read the\nuidStatsMap and tagStatsMap to get the network traffic information.\nCurrently the implementation only try to get the data from bpf for a\nreference but the final value returned is still from old xt_qtaguid\nmodule. So the result will not be effected. The bpf implementation is\ndepending on libbpf inside netd.\n\nBug: 30950746\nTest: CtsNetTestCases -t android.net.cts.TrafficStatsTest\n\nChange-Id: Ia85e4d4d602f6bd536739d89085e6dc37ad82e15\n"
    },
    {
      "commit": "e6b42773e8c079d0d41814d3455803d627dd1e3a",
      "tree": "2e969e7a5078d86e435de4ae31007737c8de3486",
      "parents": [
        "222529d95ca6f0ea89bff5532dd9440909258540"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Dec 13 18:26:40 2017 -0800"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Mon Jan 22 21:09:47 2018 -0800"
      },
      "message": "Add checks to ensure SPIs are not reused\n\nThis change adds an additional check in CheckIpsecConfig to prevent\nusers from using the same SPI twice. This allows for a more granular\nerror message.\n\nBug: 70642141\nTest: Tests added in IpSecServiceParameterizedTest\nChange-Id: I9621fb05c6b162bd8ae8db4ac1e64feaa9d0ac73\n"
    },
    {
      "commit": "bf996dd479d933b1e6be8fae50d1517229047674",
      "tree": "079351789b9ad93a5c1521c39e9a23092c2342f7",
      "parents": [
        "174df238ac2ce4e952c88d0aa83505aa123629e5",
        "5eb97dcf50da4a405b5bc889ec2cec27b0fd07d9"
      ],
      "author": {
        "name": "Badhri Jagan Sridharan",
        "email": "badhri@google.com",
        "time": "Tue Jan 23 03:09:27 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 23 03:09:27 2018 +0000"
      },
      "message": "Merge \"Add support for UsbDeviceManager to talk to USB GADGET HAL\""
    },
    {
      "commit": "c0a2e5f05d97fe527de4694fa3fe5ea43eca939d",
      "tree": "31f5560487ebe865aea846b034ae0c99b069f677",
      "parents": [
        "7e3b1832c461b751e5170434bbb5545a8d6b6e58"
      ],
      "author": {
        "name": "Amit Mahajan",
        "email": "amitmahajan@google.com",
        "time": "Thu Jan 18 17:51:53 2018 -0800"
      },
      "committer": {
        "name": "Amit Mahajan",
        "email": "amitmahajan@google.com",
        "time": "Mon Jan 22 18:31:01 2018 -0800"
      },
      "message": "Added new slot status related broadcast.\n\nTest: none\nBug: 64131518\nMerged-in: I0a5825a1d121dc22f042fd71598f58e064e9e2a2\nChange-Id: I0a5825a1d121dc22f042fd71598f58e064e9e2a2\n"
    },
    {
      "commit": "5eb97dcf50da4a405b5bc889ec2cec27b0fd07d9",
      "tree": "079351789b9ad93a5c1521c39e9a23092c2342f7",
      "parents": [
        "174df238ac2ce4e952c88d0aa83505aa123629e5"
      ],
      "author": {
        "name": "Badhri Jagan Sridharan",
        "email": "Badhri@google.com",
        "time": "Thu Jan 11 16:56:29 2018 -0800"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon Jan 22 17:02:25 2018 -0800"
      },
      "message": "Add support for UsbDeviceManager to talk to USB GADGET HAL\n\nTill now, Init scripts(property tiggers) are used define the\noperation that needs to be performed when a certain gadget\ncomposition needs to be enabled. Based on the user preference,\nusb service sets the sys.usb.config which triggers the\ncorresponding property triggers in init scripts and usbservice\npolls on sys.usb.state to infer whether the property triggers\nhave completed executing.\n\nThis CL makes UsbHandler class abstract to make init scripts\nbased legacy implementation and HAL based implementation to\nshare the common logic. The legacy init script based logic is\nimplemented by UsbHandlerLegacy and HAL based logic is implemented\nby UsbHandlerHal. The decision on which one to initialize is\nmade depending on whether the device has Gadget HAL impelemented.\n\nSince HIDL supports asynch calbacks, usb state management is moved\nto the message queue to avoid polling incase of HAL based\nimplementation.\n\nTo switch to a new configuration:\n1. UsbService calls setCurrentUsbFunctions and queues\n   MSG_SET_FUNCTIONS_TIMEOUT\n2. If the  setCurrentUsbFunctionsCb arrives on time,\n   then  MSG_SET_FUNCTIONS_TIMEOUT is cancelled and\n   default functions are retried by queueing\n   MSG_SET_DEFAULT_FUNCTIONS if SUCCESS is not signalled.\n3. If MSG_SET_FUNCTIONS_TIMEOUT gets executed, then,\n   default functions are retried by calling\n   setEnabledFunctions(null, false, mUsbDataUnlocked);\n\nAlso, for HAL based implementation config_oemUsbModeOverride is no\nlonger needed as hal can take of enabling oem specific functions.\n\nBug: 63669128\nTest: Tested usb gadget configuration for both cases:\n1. When gadget hal is present\n2. When gadget hal is not present\nChange-Id: Ifcef464a0b97b265872696346a76162f8e84d6c0\n"
    },
    {
      "commit": "174df238ac2ce4e952c88d0aa83505aa123629e5",
      "tree": "5b12bfd955fdc3160147e0e62f85c38f3ba0f3e5",
      "parents": [
        "1683b6968d40f4fdccdd62b5b98c103024db1f5e",
        "0c961165c25082936a8852f5ec97a1a820936fc2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 23 00:52:00 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 23 00:52:00 2018 +0000"
      },
      "message": "Merge \"Camera: remove NOT_PRESENT cameras\""
    },
    {
      "commit": "1683b6968d40f4fdccdd62b5b98c103024db1f5e",
      "tree": "70bacc5c62833e0167300d5c7db88eb3e0b1cd59",
      "parents": [
        "b60e42becd517fe88640a9c9682f9e1fa5039e2a",
        "1e507e6178fcc45f184d9164061d2ecfd695a055"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 23 00:15:15 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 23 00:15:15 2018 +0000"
      },
      "message": "Merge \"Remove obsolete NetworkStats.Entry constructor.\""
    },
    {
      "commit": "b60e42becd517fe88640a9c9682f9e1fa5039e2a",
      "tree": "7f501bab5f58dbcc7c9321d11cf9cfdd1a252758",
      "parents": [
        "278dd4ab90d8b9280ef9c543d930bdce1f7b9d44",
        "a5dcdb4dc4ca384db23267e3253d6fcb3dff64f8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 22 23:55:49 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 22 23:55:49 2018 +0000"
      },
      "message": "Merge \"Add broadcast action for carrier setup\""
    },
    {
      "commit": "2a4d0c8d5023f9af752d80a1cce96f391845f02c",
      "tree": "45f6bab6413e38426f9904660a03c50a7c54a0d3",
      "parents": [
        "7e3b1832c461b751e5170434bbb5545a8d6b6e58"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Sat Jan 20 19:41:00 2018 -0800"
      },
      "committer": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Mon Jan 22 15:04:33 2018 -0800"
      },
      "message": "Combined flags of data service requests into one reason param\n\nMade the API flexible for future expansion. The two boolean flag\n\u0027reasonShutdown\u0027 and \u0027isHandover\u0027 are merged into the \u0027reason\u0027\nparams.\n\nTest: Manual\nbug: 64132030\nChange-Id: I29a0ca6a7c3b897910f3bb6076f44315adc91893\n"
    },
    {
      "commit": "278dd4ab90d8b9280ef9c543d930bdce1f7b9d44",
      "tree": "4d60c9362b5ae51c22cc2b9b4e603c7312cb77c0",
      "parents": [
        "2f6b2726e6eb281e8687e46587c083784b8fd7e9",
        "84323c0dcea99d9d254c2b8d84e8dadaa243fd6a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 22 22:53:38 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 22 22:53:38 2018 +0000"
      },
      "message": "Merge \"Add NetworkTypeBitmask into public ApnSetting.\""
    },
    {
      "commit": "2f6b2726e6eb281e8687e46587c083784b8fd7e9",
      "tree": "de5873e2e8578efa299fc963d23bb20abdb59131",
      "parents": [
        "222529d95ca6f0ea89bff5532dd9440909258540",
        "ac1defabc89e969c62cff84982e125a510d2e1ed"
      ],
      "author": {
        "name": "Chen Xu",
        "email": "fionaxu@google.com",
        "time": "Mon Jan 22 22:44:02 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 22 22:44:02 2018 +0000"
      },
      "message": "Merge \"address carrier id api review feedback\""
    },
    {
      "commit": "a5dcdb4dc4ca384db23267e3253d6fcb3dff64f8",
      "tree": "ecd439209f723187fb710d49a016bb3900eb5305",
      "parents": [
        "222529d95ca6f0ea89bff5532dd9440909258540"
      ],
      "author": {
        "name": "Qingxi Li",
        "email": "qingxi@google.com",
        "time": "Fri Jan 19 12:24:05 2018 -0800"
      },
      "committer": {
        "name": "Qingxi Li",
        "email": "qingxi@google.com",
        "time": "Mon Jan 22 14:03:40 2018 -0800"
      },
      "message": "Add broadcast action for carrier setup\n\nThis broadcast action is sent by eSIM Manager to let the carrier app\nknow that the carrier setup is not completed.\n\nBug: 62639823\nTest: TreeHugger\nMerged-In: I88ac90cf679d5ec98aa7c0cf7bd9c96010597a1c\nChange-Id: I88ac90cf679d5ec98aa7c0cf7bd9c96010597a1c\n"
    },
    {
      "commit": "ac1defabc89e969c62cff84982e125a510d2e1ed",
      "tree": "5c12c115c65a1eda6ee2df9d47a189d576e8f790",
      "parents": [
        "6cb33a1b5479e7903d0a90da91344c1005effe46"
      ],
      "author": {
        "name": "fionaxu",
        "email": "fionaxu@google.com",
        "time": "Fri Jan 05 15:38:11 2018 -0800"
      },
      "committer": {
        "name": "Chen Xu",
        "email": "fionaxu@google.com",
        "time": "Mon Jan 22 21:05:55 2018 +0000"
      },
      "message": "address carrier id api review feedback\n\n1. improve comments\n2. change returned carrier name from String to CharSequence\n3. change to AndroidCarrierId\n\nBug: 64131637\nBug: 71584605\nTest: Manual\nChange-Id: I412d53bb9d4955e1267300692e90ebfffd6818df\nMerged-in: I412d53bb9d4955e1267300692e90ebfffd6818df\n"
    },
    {
      "commit": "222529d95ca6f0ea89bff5532dd9440909258540",
      "tree": "904378466916fd53528590fc9e54925e0ff5f6d0",
      "parents": [
        "940c0341f00872e5e19ea28cc8389b9bfd1c3abc",
        "4f9fb810d874af068f19ceaf724732cbf79c6427"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Mon Jan 22 20:32:18 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 22 20:32:18 2018 +0000"
      },
      "message": "Merge \"Address comments and final cleanup from refcounting integration\""
    },
    {
      "commit": "940c0341f00872e5e19ea28cc8389b9bfd1c3abc",
      "tree": "3186fcab906aba8d44874ad8356bcef339331941",
      "parents": [
        "7ee26e72cf3cecf782ad822a6795a6e018ac2dba",
        "571b700fb6bdb90eed59d16705ef4ae2fb69a9d3"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 22 18:22:07 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 22 18:22:07 2018 +0000"
      },
      "message": "Merge \"Debug: Add attachJvmtiAgent with classloader\""
    },
    {
      "commit": "7ee26e72cf3cecf782ad822a6795a6e018ac2dba",
      "tree": "d2296f80408efc90a69b2653320c3e61c91794c8",
      "parents": [
        "7e3b1832c461b751e5170434bbb5545a8d6b6e58",
        "f33f03134442538a637627decaf57c859acbc824"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Mon Jan 22 17:57:15 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 22 17:57:15 2018 +0000"
      },
      "message": "Merge \"Rename create/delete transform methods\""
    },
    {
      "commit": "84323c0dcea99d9d254c2b8d84e8dadaa243fd6a",
      "tree": "6b8f7a5421299290643e21f436f17e8f93701d44",
      "parents": [
        "4c0065f3924a1c570c8761e6342b74a76d2fba33"
      ],
      "author": {
        "name": "yuemingw",
        "email": "yuemingw@google.com",
        "time": "Mon Jan 22 17:32:09 2018 +0000"
      },
      "committer": {
        "name": "yuemingw",
        "email": "yuemingw@google.com",
        "time": "Mon Jan 22 17:35:26 2018 +0000"
      },
      "message": "Add NetworkTypeBitmask into public ApnSetting.\n\nSync with aosp/556766.\nMoved from ag/3477310.\n\nBug: 68208293\nTest: manual\nChange-Id: I04b901c46b7bbce4ed7d52895fcc904fb713fb69\n"
    },
    {
      "commit": "bceb382572317df111d94f31edab70d4064ce033",
      "tree": "c87260dfd74623d445fa7e05db7c186e76342c41",
      "parents": [
        "7e3b1832c461b751e5170434bbb5545a8d6b6e58"
      ],
      "author": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Mon Jan 22 12:26:39 2018 -0500"
      },
      "committer": {
        "name": "Robert Sesek",
        "email": "rsesek@google.com",
        "time": "Mon Jan 22 12:29:21 2018 -0500"
      },
      "message": "Use the correct value for Process.WEBVIEW_ZYGOTE_UID.\n\nWhen the libcutils constant was added there a merge conflict, which\ncaused the AID_WEBVIEW_ZYGOTE value to land with a different value than\nthe Java-side Process value. Nothing yet uses the Process constant, so\nthere were no ill effects.\n\nTest: m\nChange-Id: I8cc87bce1ddbdcdaf79d85c828d86837e96cce21\n"
    },
    {
      "commit": "9f17dfcba6f286bca0fb47c32105c07328a4cc5c",
      "tree": "09240955569f717529a572ce2fec9d254c00e321",
      "parents": [
        "b3c2efc6156cb86ae1f8958ee89a8ac404b190df"
      ],
      "author": {
        "name": "Benoit Lamarche",
        "email": "benoitlamarche@google.com",
        "time": "Mon Jan 22 17:38:41 2018 +0100"
      },
      "committer": {
        "name": "Benoit Lamarche",
        "email": "benoitlamarche@google.com",
        "time": "Mon Jan 22 17:42:21 2018 +0100"
      },
      "message": "Fail when there is an ASM error\n\nOtherwise during a build, Locked Region Code Injection may encounter an\nASM Analyzer exception, and the build will not fail, even though\ninjection won\u0027t have succeeded.\n\nTest: make\nChange-Id: Iee69f1a78fde735db62c7f73405b8cec4e410793\n"
    },
    {
      "commit": "1e507e6178fcc45f184d9164061d2ecfd695a055",
      "tree": "b6918a9794457ca321c78072cec923109179a4de",
      "parents": [
        "7e3b1832c461b751e5170434bbb5545a8d6b6e58"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Sun Jan 21 23:00:55 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Sun Jan 21 23:01:35 2018 +0900"
      },
      "message": "Remove obsolete NetworkStats.Entry constructor.\n\nThe only caller is telephony code, and it\u0027s being fixed in this\ntopic.\n\nBug: 35142602\nTest: builds, boots\nChange-Id: Ia77a1c2c297037f311c2355610c206cd8e3192c4\n"
    },
    {
      "commit": "7e3b1832c461b751e5170434bbb5545a8d6b6e58",
      "tree": "c6edd0369f0438f9e1cde594fcea2c1f8e09a7bf",
      "parents": [
        "fa208b42266cf3cde8b6ea94cda5eb7b0ed72c4b",
        "be4fb893a01e6e798e4be23666835424fb56b785"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 20 23:30:34 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jan 20 23:30:34 2018 +0000"
      },
      "message": "Merge \"Multi-A2DP support - add a new internal API to suppress Audio Noisy intent\""
    },
    {
      "commit": "be4fb893a01e6e798e4be23666835424fb56b785",
      "tree": "c6edd0369f0438f9e1cde594fcea2c1f8e09a7bf",
      "parents": [
        "fa208b42266cf3cde8b6ea94cda5eb7b0ed72c4b"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@google.com",
        "time": "Fri Jan 19 18:20:04 2018 -0800"
      },
      "committer": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@google.com",
        "time": "Sat Jan 20 11:50:37 2018 -0800"
      },
      "message": "Multi-A2DP support - add a new internal API to suppress Audio Noisy intent\n\nThe new API setBluetoothA2dpDeviceConnectionStateSuppressNoisyIntent()\nis similar to the existing setBluetoothA2dpDeviceConnectionState()\nexcept that it takes one extra argument that indicates whether the\nAudioManager.ACTION_AUDIO_BECOMING_NOISY intent will be sent:\n\n  setBluetoothA2dpDeviceConnectionStateSuppressNoisyIntent(\n      ..., boolean suppressNoisyIntent)\n\nThis API is needed so the Active A2DP Sink device can be changed\nwhile audio is streaming, and the audio continues playing on the new\nActive Device.\n\nBug: 69269748\nTest: Manual: multiple connected A2DP devices, and selecting each as\n      the Active Device.\n\nChange-Id: I75766a58d9e6b42b3ce68bd9ad3a7a72ca5a1023\n(cherry picked from commit 82e06463f2571a06286f9da0bf3ad5a0e58461a2)\n"
    },
    {
      "commit": "fa208b42266cf3cde8b6ea94cda5eb7b0ed72c4b",
      "tree": "2e8801e9b083495b611b92014e4b4aed68e2544e",
      "parents": [
        "6745e15d17a95059649be252c61c9b254fa7ffa2",
        "a793f3ff523686410c24cdd06a7390ef80483675"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Sat Jan 20 10:06:22 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jan 20 10:06:22 2018 +0000"
      },
      "message": "Merge \"Generate new API signatures from doclava\""
    },
    {
      "commit": "6745e15d17a95059649be252c61c9b254fa7ffa2",
      "tree": "5c8c5ca171dec281ce3b3a1f14ba123dcbe0f610",
      "parents": [
        "8fb3bdc36f7712511a5ab4a1c25a481e1d4982a8",
        "921daf9e1836104b0db8b90145be22f3f563908f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 20 08:28:24 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jan 20 08:28:24 2018 +0000"
      },
      "message": "Merge \"Add CARD_ID in SubscriptionInfo database\""
    },
    {
      "commit": "0c961165c25082936a8852f5ec97a1a820936fc2",
      "tree": "32769af4fd6bcf8223022f2e131004eaac6ca1f2",
      "parents": [
        "8fb3bdc36f7712511a5ab4a1c25a481e1d4982a8"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Jan 02 11:17:58 2018 -0800"
      },
      "committer": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Sat Jan 20 00:55:45 2018 +0000"
      },
      "message": "Camera: remove NOT_PRESENT cameras\n\nSo hot plug cameras won\u0027t stay forever in\ndevice status map.\n\nChange-Id: I0290ff2eccb3d48a0f72c48f32a97909d20623ad\n"
    },
    {
      "commit": "8fb3bdc36f7712511a5ab4a1c25a481e1d4982a8",
      "tree": "e4c5ad09462ae8ab61ad82d71cf5ac92763720a8",
      "parents": [
        "08d07aec5072f2fc4b461232a24c7c4e1a61723c",
        "dad385ae29e13a04500fd698e585f933cd352e53"
      ],
      "author": {
        "name": "Jordan Liu",
        "email": "jminjie@google.com",
        "time": "Fri Jan 19 20:39:43 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 19 20:39:43 2018 +0000"
      },
      "message": "Merge \"Make LTE signal bar thresholds customizable with carrier configuration\""
    },
    {
      "commit": "08d07aec5072f2fc4b461232a24c7c4e1a61723c",
      "tree": "621d5990671a930ac603e6a1779c97d4a8ca461d",
      "parents": [
        "c48f4cb7f1384842f615ff527fbaab70449c4d81",
        "c47eaccf7c09541c6dd3d3ebedcb2e224346d903"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Fri Jan 19 19:43:17 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 19 19:43:17 2018 +0000"
      },
      "message": "Merge \"Add Tunnel Interface APIs to IpSecManager\""
    },
    {
      "commit": "dad385ae29e13a04500fd698e585f933cd352e53",
      "tree": "13eba25a81f71b33fed16f0925099deb6e473aef",
      "parents": [
        "1d5e2c3c37e39787625dc4acd3d43806f0688f73"
      ],
      "author": {
        "name": "Kitta Koutarou",
        "email": "koutarou.x.kitta@sonymobile.com",
        "time": "Fri Dec 01 19:19:49 2017 +0900"
      },
      "committer": {
        "name": "Jordan Liu",
        "email": "jminjie@google.com",
        "time": "Fri Jan 19 10:55:24 2018 -0800"
      },
      "message": "Make LTE signal bar thresholds customizable with carrier configuration\n\nMove config_lteDbmThresholds to KEY_LTE_RSRP_THRESHOLDS_INT_ARRAY\nto control the LTE signal bar thresholds by carrier configuration.\n\nTest: manual - Checked that the LTE signal bar thresholds can be\ncontrolled by carrier config.\nTest: auto - Confirmed that run\nServiceStateTrackerTest#testSignalStrength and it has no problem.\nBug: 70698348\nChange-Id: Ia613663956ff00fbf299dcf69113733eae5a3458\nMerged-In: Ia613663956ff00fbf299dcf69113733eae5a3458\n"
    },
    {
      "commit": "f33f03134442538a637627decaf57c859acbc824",
      "tree": "bd79788c53a182d5aee71d339795c87a2968549b",
      "parents": [
        "e1992384e0067081f89767f5be5ddcd4ab7be316"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Thu Jan 18 14:38:16 2018 -0800"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Fri Jan 19 10:43:01 2018 -0800"
      },
      "message": "Rename create/delete transform methods\n\nCreateTransportModeTransform and DeleteTransportModeTransform are both\nagnostic as far as which mode of transform it creates/deletes. As such,\nto facilitate the implementation of tunnel mode, this patch renames them\nto CreateTransform and DeleteTransform, along with all test names.\n\nBug: 63588681\nTest: frameworks/base unit tests and CTS tests run, passed\nChange-Id: I1f015eb7ad0e85fca966658a9402485ca2b44091\n"
    },
    {
      "commit": "c48f4cb7f1384842f615ff527fbaab70449c4d81",
      "tree": "b59bde4e2e9884877effc1e035df1966f3ab9011",
      "parents": [
        "0fc9900802e695b3ff64d17438efa88257a29d1e",
        "d3e4a1e250194bbf59b1e04b60711f97001f61f8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 19 14:48:52 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 19 14:48:52 2018 +0000"
      },
      "message": "Merge changes Id8776d14,Ifa291c62,I5ea9d200\n\n* changes:\n  Track and persist in stats whether traffic is on the default network.\n  Add the default network to NetworkStats and NetworkStatsCollection.\n  Pass all default networks to NetworkStatsService\n"
    },
    {
      "commit": "d3e4a1e250194bbf59b1e04b60711f97001f61f8",
      "tree": "195e04139c9f7092f465a2a4a78a93a5f9648de1",
      "parents": [
        "ada23ed56addb7c06a489c7464ae228a46588b95"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Fri Jan 19 01:12:04 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Fri Jan 19 19:49:16 2018 +0900"
      },
      "message": "Track and persist in stats whether traffic is on the default network.\n\nThis change adds the defaultNetwork to the ident based on current\nsystem networking state, and persists that value to flash.\n\nBug: 35142602\nTest: runtest frameworks-net\nTest: downloaded files using default/non-default networks while watching dumpsys netstats\nChange-Id: Id8776d149b2977548a9eb455ad4926af55e25aba\n"
    },
    {
      "commit": "ada23ed56addb7c06a489c7464ae228a46588b95",
      "tree": "6a4a2026428495baf51ba38ae5d09b2eee4c314a",
      "parents": [
        "c78da2937cf79e11d439df7730fa29c82b177ab3"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Fri Jan 19 01:05:20 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Fri Jan 19 19:49:16 2018 +0900"
      },
      "message": "Add the default network to NetworkStats and NetworkStatsCollection.\n\nThis allows us to maintain NetworkStats entries that track\nwhether the traffic was on the default network.\n\nAt the moment, the stats collection code always passes in\nDEFAULT_NETWORK_NO. However, this value is a no-op, since it is\nnot persisted to disk. Only the ident, the uid/set/tag, and the\npacket/byte/operation counters are persisted.\n\nA future change will add defaultNetwork to the ident and start\npersisting it.\n\nBug: 35142602\nTest: runtest frameworks-net\nChange-Id: Ifa291c62c0fa389b88e5561086a29dcd7cee2253\n"
    },
    {
      "commit": "c78da2937cf79e11d439df7730fa29c82b177ab3",
      "tree": "5c67271e8396bf18783cf7c5a1b5c6d515aa583c",
      "parents": [
        "a3bf36f05009a5b809eb4dc04185c0fba4dddaca"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Fri Jan 19 00:50:48 2018 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Fri Jan 19 16:40:10 2018 +0900"
      },
      "message": "Pass all default networks to NetworkStatsService\n\nThis will allow NetworkStatsService to treat traffic on these\nnetworks differently from traffic where the app selects a network\nthat is not the default.\n\nBug: 35142602\nTest: runtest frameworks-net\nChange-Id: I5ea9d200d9fb153490c6108bb9390bf152f297da\n"
    },
    {
      "commit": "571b700fb6bdb90eed59d16705ef4ae2fb69a9d3",
      "tree": "ece227d7f2c2ef69ca797187dde6c8876aa00b82",
      "parents": [
        "8353a39ecc8e44bb9c084bcaf5ede8469d64d260"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jan 16 15:11:29 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jan 18 22:02:53 2018 -0800"
      },
      "message": "Debug: Add attachJvmtiAgent with classloader\n\nAdd classloader support to android.os.Debug.attachJvmtiAgent. For\nthe original version without a given classloader, look up the\napplication\u0027s main classloader.\n\nBug: 65016018\nBug: 70901841\nTest: m\nTest: cts-tradefed run commandAndExit cts-dev\nChange-Id: I649b6883e05dc2f75073fe1f978423f6a7b880df\n"
    },
    {
      "commit": "0fc9900802e695b3ff64d17438efa88257a29d1e",
      "tree": "5a8ffd64641bd0ca2d501086ef77c2c899bc4728",
      "parents": [
        "8353a39ecc8e44bb9c084bcaf5ede8469d64d260",
        "5d70fc9ae34138f34d2dd69b93a8ca718f0b14fd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 19 04:25:12 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 19 04:25:12 2018 +0000"
      },
      "message": "Merge \"Added new SIM state related broadcasts.\""
    },
    {
      "commit": "8353a39ecc8e44bb9c084bcaf5ede8469d64d260",
      "tree": "47b97421efca68829405204222252a79cc8fd4d5",
      "parents": [
        "898137f81744ca26e980de56c69ff6f780b8caff",
        "0c3c4d1c7d6fb210548f32a6e6ec01fd9bf90760"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 19 02:38:33 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 19 02:38:33 2018 +0000"
      },
      "message": "Merge \"Fixing app compat issue b/72143978\""
    },
    {
      "commit": "898137f81744ca26e980de56c69ff6f780b8caff",
      "tree": "85efcf69ea426555748c3e4f864373b5c40a43a5",
      "parents": [
        "d6cd4b241a7c51cf2611e4b1cf30358c77bf9804",
        "2ef0cbd8bb070a3268ba5e832c4994415fcfbabf"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 19 01:41:08 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 19 01:41:08 2018 +0000"
      },
      "message": "Merge \"HIDL: Check error value.\""
    },
    {
      "commit": "0c3c4d1c7d6fb210548f32a6e6ec01fd9bf90760",
      "tree": "20bef3c1e82ff74b1794f202401c291020e21f96",
      "parents": [
        "d6cd4b241a7c51cf2611e4b1cf30358c77bf9804"
      ],
      "author": {
        "name": "Ian Pedowitz",
        "email": "ijpedowitz@google.com",
        "time": "Thu Jan 18 16:24:11 2018 -0800"
      },
      "committer": {
        "name": "Ian Pedowitz",
        "email": "ijpedowitz@google.com",
        "time": "Thu Jan 18 16:24:11 2018 -0800"
      },
      "message": "Fixing app compat issue b/72143978\n\nRevert \"Remove obsolete workaround.\"\n\nThis reverts commit 5e48241a95b843c10f96c57d8544af9d04807218.\n\nBug: 72143978\nBug: 24465209\nTest: Tested failing case on sailfish, reverted back all CL\u0027s since\nTest: 3471433 for b/24465209 and apps open\n"
    },
    {
      "commit": "d6cd4b241a7c51cf2611e4b1cf30358c77bf9804",
      "tree": "8b3f23fae31b13fa38082139e4388945627a2aa0",
      "parents": [
        "1d5e2c3c37e39787625dc4acd3d43806f0688f73",
        "75d3189444ac05f6fcb5570932aa8585f008e59c"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 18 23:58:30 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 18 23:58:30 2018 +0000"
      },
      "message": "Merge \"Add ability to override subscriber capabilities.\""
    },
    {
      "commit": "0b611f496e9dd6be62419d8cd7f2d164efefad1c",
      "tree": "68560acf16096b3d242b7893e09d54a7a88ac363",
      "parents": [
        "3965e3bbc615c0476202baff35a6006eef140b94"
      ],
      "author": {
        "name": "Di Lu",
        "email": "ludi@google.com",
        "time": "Thu Jan 11 11:35:25 2018 -0800"
      },
      "committer": {
        "name": "Di Lu",
        "email": "ludi@google.com",
        "time": "Thu Jan 18 15:23:56 2018 -0800"
      },
      "message": "Add xfrm mark in IpSecConfig\n\nBug: 63589600\nTest: runtest frameworks-net\nChange-Id: I2d38d781b8b31d8bf39fd4e9a7e31509f15a9e16\n"
    },
    {
      "commit": "5d70fc9ae34138f34d2dd69b93a8ca718f0b14fd",
      "tree": "cc37bd3afe15f0d4414f7536f99daea235ab65bd",
      "parents": [
        "277c7d248c23e43082143657d982304ca6e28312"
      ],
      "author": {
        "name": "Amit Mahajan",
        "email": "amitmahajan@google.com",
        "time": "Fri Jan 12 17:40:29 2018 -0800"
      },
      "committer": {
        "name": "Amit Mahajan",
        "email": "amitmahajan@google.com",
        "time": "Thu Jan 18 14:44:07 2018 -0800"
      },
      "message": "Added new SIM state related broadcasts.\n\nTest: Basic telephony sanity and unit tests\nBug: 64131518\nMerged-in: Ie3d157e79a7040c161b9038c875a4a4f49d535ff\nChange-Id: Ie3d157e79a7040c161b9038c875a4a4f49d535ff\n"
    },
    {
      "commit": "1d5e2c3c37e39787625dc4acd3d43806f0688f73",
      "tree": "9ccc82155f4ec317f83bd3dc835cf4c2c1926714",
      "parents": [
        "6ecaac4c9f594b26e7734b63cb66a1e83effa89c",
        "67ed2e96a2118769d6da3f6433d56609ef7770ab"
      ],
      "author": {
        "name": "Dan Zhang",
        "email": "danielzhang@google.com",
        "time": "Thu Jan 18 22:16:39 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 18 22:16:39 2018 +0000"
      },
      "message": "Merge \"Fix \u003cReport Audio Status\u003e update\""
    },
    {
      "commit": "6ecaac4c9f594b26e7734b63cb66a1e83effa89c",
      "tree": "0cd463d5170498b7ebc63728fe14aa3ca3d33e7b",
      "parents": [
        "fca5ee0bb80d9f0d9e3ce580ce00903ee5ea3745",
        "68e1f172cee1ba1d64f1a0ac9d645b1cca888587"
      ],
      "author": {
        "name": "Dan Zhang",
        "email": "danielzhang@google.com",
        "time": "Thu Jan 18 22:16:23 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 18 22:16:23 2018 +0000"
      },
      "message": "Merge \"Fix OTP performance with no Vendor ID device\""
    },
    {
      "commit": "fca5ee0bb80d9f0d9e3ce580ce00903ee5ea3745",
      "tree": "97a3fca90a1d5a8b844d399b1a5dbabd45cb8f6b",
      "parents": [
        "20443a8dbb5af0fe8977e94fb24bae064e7e4257",
        "ad91e7ef1e3436b54e0cd6126d1de3e410c28f9f"
      ],
      "author": {
        "name": "Dan Zhang",
        "email": "danielzhang@google.com",
        "time": "Thu Jan 18 22:15:39 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 18 22:15:39 2018 +0000"
      },
      "message": "Merge \"Fix NPE by pressing Volume Up/Down\""
    },
    {
      "commit": "20443a8dbb5af0fe8977e94fb24bae064e7e4257",
      "tree": "e098ddf3a6ce29c293355f7649db0e885b263b89",
      "parents": [
        "524fe66549d0e3c1d52875d7d91a67050263858c",
        "fbb50bc482ad4fb6d440b62adc9fcceb103f9658"
      ],
      "author": {
        "name": "Dan Zhang",
        "email": "danielzhang@google.com",
        "time": "Thu Jan 18 21:50:10 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 18 21:50:10 2018 +0000"
      },
      "message": "Merge \"Fix illegal volume value issue\""
    },
    {
      "commit": "75d3189444ac05f6fcb5570932aa8585f008e59c",
      "tree": "2c8c6b594dca8098556106ba11e1030cb88e320a",
      "parents": [
        "524fe66549d0e3c1d52875d7d91a67050263858c"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 18 22:01:59 2018 +0900"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 18 14:46:13 2018 -0700"
      },
      "message": "Add ability to override subscriber capabilities.\n\nIn a future set of CLs, NPMS will offer to override a handful of\ncapabilities on a per-subId basis.  Define a no-op version of the\ninterface to make it easier to add new methods in the future.\n\nTest: bit FrameworksNetTests:android.net.,com.android.server.net.\nTest: bit FrameworksTelephonyTests:com.android.internal.telephony.dataconnection.DataConnectionTest\nBug: 64133169\nChange-Id: I03dfd98463861f0338c4174e8d8a88c300ea5b55\n"
    },
    {
      "commit": "524fe66549d0e3c1d52875d7d91a67050263858c",
      "tree": "97f4b131bed2ea6ae01dbad6c50d2d083f43aebb",
      "parents": [
        "e1992384e0067081f89767f5be5ddcd4ab7be316",
        "2433baf25153c55ad5adfd2645636c2260098950"
      ],
      "author": {
        "name": "Arthur Hsu",
        "email": "arthurhsu@google.com",
        "time": "Thu Jan 18 19:38:32 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 18 19:38:32 2018 +0000"
      },
      "message": "Merge \"Add config_supportBluetoothPersistedState.\""
    },
    {
      "commit": "2433baf25153c55ad5adfd2645636c2260098950",
      "tree": "97f4b131bed2ea6ae01dbad6c50d2d083f43aebb",
      "parents": [
        "e1992384e0067081f89767f5be5ddcd4ab7be316"
      ],
      "author": {
        "name": "Arthur Hsu",
        "email": "arthurhsu@google.com",
        "time": "Thu Jan 11 11:05:11 2018 -0800"
      },
      "committer": {
        "name": "Arthur Hsu",
        "email": "arthurhsu@google.com",
        "time": "Thu Jan 18 19:36:00 2018 +0000"
      },
      "message": "Add config_supportBluetoothPersistedState.\n\nAdd a config to indicate whether a device supports Bluetooth persisted\nstate and defaulted to true. In ARC++, Bluetooth adapter state can be\nout-of-sync from its container if the user changes it before the\ncontainer being available.\n\nWhen set to false, this config prevents Android to auto start the\nBluetooth. ARC++ will set this to false and sync Bluetooth state later\nwith Android.\n\nRelated CL is ag/931281\n\nBug: 62413625, 69965109\nTest: On sailfish, Bluetooth on/off correctly and state persisted across reboot\nChange-Id: Ie298929eb6b882108a12e8b95f61e3c9f8eb63ea\n"
    },
    {
      "commit": "e1992384e0067081f89767f5be5ddcd4ab7be316",
      "tree": "83eeaa6b20f20667c70b5cd1c7cedc554ee8e99e",
      "parents": [
        "b3c2efc6156cb86ae1f8958ee89a8ac404b190df",
        "e48468d8be0c74fec135bb12d84b23cc0168cd53"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 16:42:33 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 18 16:42:33 2018 +0000"
      },
      "message": "Merge \"Added APIs for Connection-oriented channels\""
    },
    {
      "commit": "a793f3ff523686410c24cdd06a7390ef80483675",
      "tree": "6a117f3227b0bb09577572abd4f5cbdc9fe06057",
      "parents": [
        "b3c2efc6156cb86ae1f8958ee89a8ac404b190df"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Jan 16 15:03:20 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Jan 18 10:40:11 2018 +0000"
      },
      "message": "Generate new API signatures from doclava\n\nDoclava now generates API signatures of classes and their members\nwhich are not part of the public SDK. Adjust the arguments passed\nto Doclava to enable that feature.\n\nBug: 64382372\nTest: m\nChange-Id: I47de683dd2b00fce73b82581a13fbe1013ef625f\n"
    }
  ],
  "next": "b3c2efc6156cb86ae1f8958ee89a8ac404b190df"
}
