)]}'
{
  "log": [
    {
      "commit": "622f511f2ff29bb5a115d90a42b2870e75db68f9",
      "tree": "0e79e2e517147757b4837ba34aa1e5a90efeb651",
      "parents": [
        "827d0d76fbbbfcc1ed71b060b127c44c840a6336"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Nov 29 19:28:13 2016 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 30 09:46:09 2016 -0800"
      },
      "message": "App_process: Clean up sanitized binaries\n\nClean up the definition of sanitized binaries. Clean up the\nAndroid.mk to share values.\n\nBug: 33224213\nTest: mmma SANITIZE_TARGET\u003daddress SANITIZE_LITE\u003dtrue frameworks/base/cmds/app_process \u0026\u0026 ls $OUT/system/bin/asan\nChange-Id: I70f8d95ff2ec6366fc0a7d252b91dce268186910\n"
    },
    {
      "commit": "827d0d76fbbbfcc1ed71b060b127c44c840a6336",
      "tree": "18ee949bf1d760795c8dbd04030d9be060a30222",
      "parents": [
        "6063357ae69f29c415591b173cf411f241f129c6"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Aug 15 16:10:24 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 30 09:42:23 2016 -0800"
      },
      "message": "LOCAL_CLANG :\u003d true is now the default\n\nChange-Id: I2f6a8c7f32cbf682c968a43d590d773ffb21e909\n(cherry picked from commit 3a7510bcf6089d3ef768de7cf805ca783f0aac17)\n"
    },
    {
      "commit": "6063357ae69f29c415591b173cf411f241f129c6",
      "tree": "63b290e92b7122a11a3a441d7e30564ee150ee1d",
      "parents": [
        "21ed56daacea56274372773ba807a30f00eaac4e",
        "4a064d20108d2c664bd6e01be21c36803f33bc08"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 29 15:01:31 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 29 15:01:32 2016 +0000"
      },
      "message": "Merge \"Use junit-host instead of junit\""
    },
    {
      "commit": "4a064d20108d2c664bd6e01be21c36803f33bc08",
      "tree": "63b290e92b7122a11a3a441d7e30564ee150ee1d",
      "parents": [
        "21ed56daacea56274372773ba807a30f00eaac4e"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 29 13:00:19 2016 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 29 14:52:42 2016 +0000"
      },
      "message": "Use junit-host instead of junit\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: I3496b9d7e40abf7712a56ba633a2becd0aa17c06\n"
    },
    {
      "commit": "21ed56daacea56274372773ba807a30f00eaac4e",
      "tree": "652607b6456a3646918dbe1e25ecc81409bed4da",
      "parents": [
        "7dda7e1e81a638a63d1266f4cabb912a4a2cc1ec",
        "b5e249963141b2ab00d1a9b5e4b76d5689d64f2e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 29 14:23:03 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 29 14:23:03 2016 +0000"
      },
      "message": "Merge \"[AM] Fix system server may killed when monkey crash.\""
    },
    {
      "commit": "7dda7e1e81a638a63d1266f4cabb912a4a2cc1ec",
      "tree": "97a766446e89ccdc87bb8ab8061ed369f64718ee",
      "parents": [
        "9309f1cbf308281be87b80cfbee7b61ba3725e78",
        "21cf84f8b3561d61e39d77cc00c520951f1ddd0f"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 29 10:12:51 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 29 10:12:52 2016 +0000"
      },
      "message": "Merge \"Use junit-host instead of junit\""
    },
    {
      "commit": "b5e249963141b2ab00d1a9b5e4b76d5689d64f2e",
      "tree": "7ba76cd64fd59b55b4c485274ef6ee1f0859b658",
      "parents": [
        "ba63f32ed588d236da49a513b5fe7c54ae6fb11d"
      ],
      "author": {
        "name": "Mark Lu",
        "email": "Mark_Lu@htc.com",
        "time": "Mon Nov 21 15:38:13 2016 +0800"
      },
      "committer": {
        "name": "Mark Lu",
        "email": "Mark_Lu@htc.com",
        "time": "Tue Nov 29 06:21:24 2016 +0000"
      },
      "message": "[AM] Fix system server may killed when monkey crash.\n\n Symptom: monkey crash caused system server killed.\n Root Cause: when monkey crash or app crash before process bound,\n        calling AppErrors.crashApplication will first\n        clear binder identities, that will caused calling pid / uid\n        will become with current process (i.e. system server),\n        so in handleAppCrashInActivityController, when monkey registered\n        activityController would like to kill crash process,\n        but not found in AMS (monkey created by app_process)\n        then using calling pid / uid will become to kill system server.\n Solution: add calling pid / uid parameters for\n         handleAppCrashInActivityController to prevent binder identities\n         cleared case.\n\n\n Test: To simulate monkey or app crash before process bound may not easy\n     by using simple command, but we can write a sample program to \n     simulate RuntimeInit to call handleApplicationCrash when met \n     uncauchtException,\n\n    Below is test steps in Android 7.1.1 emulator.\n\n1. start emulator\n2. after emulater started, use \"adb shell am monitor\" to set \n   activityController \u0026 monitor process by console.\n3. write a .jar program as monkey by below sample code to simulate null \n   application binder to call handleApplicationCrash() as RuntimeInit:\n\npackage com.android.test;\n\nimport com.android.internal.os.BaseCommand;\npublic class SimulateMonkeyCrash extends BaseCommand {\n\n    public static void main(String[] args) {\n        IActivityManager am \u003d ActivityManagerNative.getDefault();\n        try {\n            am.handleApplicationCrash(null, \n                 new ApplicationErrorReport.CrashInfo(new Throwable()));\n        } catch (RemoteException e) {\n            e.printStackTrace();\n    }\n}\n\n4. write a .sh file named SimulateMonkeyCrash.sh as below:\n  #\n  base\u003d/system\n  export CLASSPATH\u003d$base/framework/SimulateMonkeyCrash.jar\n  exec app_process $base/bin com.android.test.SimulateMonkeyCrash \"$@\"\n\n5. let .sh file is executable by \"chomod 755\".\n6. push .jar file into /system/framework \u0026 .sh file into /system/bin\n7 execute .sh file.\n8. activityController will detected program crash in console as below, \npress k:\nWaiting after crash...  available commands:\n(c)ontinue: show crash dialog\n(k)ill: immediately kill app\n(q)uit: finish monitoring\n\n9 you can see system server is crash.\n\nChange-Id: Ibac4d88872f24af109d8e8522ecf5ac72fac0ce0\n"
    },
    {
      "commit": "9309f1cbf308281be87b80cfbee7b61ba3725e78",
      "tree": "608b86c7fcc1325e26e3d2ad33b1fecb34413766",
      "parents": [
        "0310de1136b86bc9b3e283b828ec5bec4f71d004",
        "3bf65c916ce65c06b0920ec4b8f68d3ef6c5e721"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 29 03:08:20 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 29 03:08:20 2016 +0000"
      },
      "message": "Merge changes I37c8daa6,I5a05b65d,If56347fd\n\n* changes:\n  Preload2: Add isSingleThreaded\n  Preload2: Fix action inheritance\n  Preload2: Abstract out UI\n"
    },
    {
      "commit": "3bf65c916ce65c06b0920ec4b8f68d3ef6c5e721",
      "tree": "c338cc3e99b383e1271e9609ccc6684bb294eb64",
      "parents": [
        "1c809a3d3240978ab393b48ec5501090ec5a0e57"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 15:06:35 2016 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 15:06:35 2016 -0800"
      },
      "message": "Preload2: Add isSingleThreaded\n\nExpose whether a UI is single-threaded to avoid spawning threads\nin actions.\n\nBug: 31961946\nTest: manual\nChange-Id: I37c8daa6a00784e833bad53b8e83ab4417955df7\n"
    },
    {
      "commit": "1c809a3d3240978ab393b48ec5501090ec5a0e57",
      "tree": "b13e751a2cf77d3c95a7a86c00efaa1538617d4e",
      "parents": [
        "5cb8998363a16e667faee4eaa7e5040bce7e702b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 15:04:25 2016 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 15:04:25 2016 -0800"
      },
      "message": "Preload2: Fix action inheritance\n\nUse AbstractThreadedAction as a base.\n\nBug: 31961946\nTest: manual\nChange-Id: I5a05b65d753be775c8b8382bb1a81e869c388f8d\n"
    },
    {
      "commit": "5cb8998363a16e667faee4eaa7e5040bce7e702b",
      "tree": "ea629bbb341dbfcefa2ba92e6445b54969957eb6",
      "parents": [
        "d7e597a2e7843b7269d4972abae820424c9d460e"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 13:15:10 2016 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 13:15:10 2016 -0800"
      },
      "message": "Preload2: Abstract out UI\n\nCreate IUI interface and move UI to SwingUI.\n\nBug: 31961946\nTest: manual\nChange-Id: If56347fdde8b441c0c01337a3f5eac002ea5b4f3\n"
    },
    {
      "commit": "0310de1136b86bc9b3e283b828ec5bec4f71d004",
      "tree": "0f923bd7f63fcb800c9cd5c0c554c91344530182",
      "parents": [
        "d7e597a2e7843b7269d4972abae820424c9d460e",
        "b222d2045d00e2a0d368aef0ee05f12c3ec56418"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Mon Nov 28 20:52:01 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 28 20:52:02 2016 +0000"
      },
      "message": "Merge \"Add removeState method to StateMachine\""
    },
    {
      "commit": "21cf84f8b3561d61e39d77cc00c520951f1ddd0f",
      "tree": "707c83c6695acf708cccb7ecc2f4d1a55cf9cfcf",
      "parents": [
        "d7e597a2e7843b7269d4972abae820424c9d460e"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Nov 28 16:44:44 2016 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Nov 28 16:44:44 2016 +0000"
      },
      "message": "Use junit-host instead of junit\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: I5d3efbfbe3245a631113674bff1b0aabdc9fe8be\n"
    },
    {
      "commit": "d7e597a2e7843b7269d4972abae820424c9d460e",
      "tree": "f1e6c943ea3f80f472e50e0c5a5d261d81c906bf",
      "parents": [
        "552744390f343af4e3b54de59079d1b326d899cd",
        "79c9e063204185b508c32e18e49a5baaa98df4be"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Nov 28 13:15:55 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 28 13:15:56 2016 +0000"
      },
      "message": "Merge \"Use the new refined DexOptNeeded codes.\""
    },
    {
      "commit": "79c9e063204185b508c32e18e49a5baaa98df4be",
      "tree": "b0f007bde2e322eb4e7261689cda0c0f8cf0bd44",
      "parents": [
        "c6c005ef5b927be1b49b4d18a0b887b571fb3ca4"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Nov 25 09:50:29 2016 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Nov 28 08:51:36 2016 +0000"
      },
      "message": "Use the new refined DexOptNeeded codes.\n\nbug: 30937355\nTest: device boots, messages are printed correctly\nChange-Id: Ia5274e3659471c2a52244d5838d207d407e79023\n"
    },
    {
      "commit": "552744390f343af4e3b54de59079d1b326d899cd",
      "tree": "482df29fc835bf6890ff03860b3a60bd70569914",
      "parents": [
        "018f6ec16fb13ad7568e43e8c7ff481104900ed6",
        "0342ab5b9447481ad82740dde01595bf3c288e15"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Nov 24 11:44:01 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 24 11:44:02 2016 +0000"
      },
      "message": "Merge \"Move JUnit classes from here into external/junit\""
    },
    {
      "commit": "018f6ec16fb13ad7568e43e8c7ff481104900ed6",
      "tree": "a448850df8034e56cbefd41b9ca8a2f2c216b95c",
      "parents": [
        "99d6227782844e42d7060b14d320cfd66a536798",
        "b77b69545ea32f336a90ac9403ceb826d8798f1b"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Wed Nov 23 23:42:29 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 23 23:42:30 2016 +0000"
      },
      "message": "Merge \"[AWARE] Move manager tests from service to manager directory\""
    },
    {
      "commit": "b222d2045d00e2a0d368aef0ee05f12c3ec56418",
      "tree": "eaad543db7263dfbbf5cd53fea0d53942159bd24",
      "parents": [
        "99d6227782844e42d7060b14d320cfd66a536798"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Mon Nov 21 17:29:02 2016 -0800"
      },
      "committer": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Wed Nov 23 11:52:58 2016 -0800"
      },
      "message": "Add removeState method to StateMachine\n\nMethod to be used by BluetoothRouteManager in Telecom.\n\nTest: unit tests in Telecom\nChange-Id: Icdd1a3d42224246a5f26100fabb26313ce83b14c\n"
    },
    {
      "commit": "b77b69545ea32f336a90ac9403ceb826d8798f1b",
      "tree": "a448850df8034e56cbefd41b9ca8a2f2c216b95c",
      "parents": [
        "99d6227782844e42d7060b14d320cfd66a536798"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Wed Nov 16 17:59:41 2016 -0800"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Wed Nov 23 10:28:09 2016 -0800"
      },
      "message": "[AWARE] Move manager tests from service to manager directory\n\nMove operation - no functional tests. Only editorial changes:\n- Remove (no longer) necessary import statements\n- Removed reference to a constant sitting on the service side.\n  Replaced with locally defined constant.\n\n(cherry pick of commit 7ba5ad3c53dac62e56cd12dbe2054ce8374b6b92)\n\nBug: 32954930\nTest: unit-tests pass\nChange-Id: Ibe463fa73c27fc67996460eb91ea0222437927a6\n"
    },
    {
      "commit": "99d6227782844e42d7060b14d320cfd66a536798",
      "tree": "e06166ed718fbc9c8153721ee4b832ba6d470c03",
      "parents": [
        "9c69c41b957de2dabcb469447043ea3df1a8e692",
        "40db40878e9f7a25f63076d95d7c7859488290cb"
      ],
      "author": {
        "name": "Jeff Davidson",
        "email": "jpd@google.com",
        "time": "Wed Nov 23 03:55:26 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 23 03:55:27 2016 +0000"
      },
      "message": "Merge \"Expose TelephonyManager#{set,get}DataEnabled.\""
    },
    {
      "commit": "9c69c41b957de2dabcb469447043ea3df1a8e692",
      "tree": "9330462dbd7033dfaf9b8551a68a6ed394a00636",
      "parents": [
        "b509957e62ee151313a21f2732aa25aa2cfc65f9",
        "315c936a87eea1198cdfe118df0ba4c7b79bfaf8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 23 02:45:54 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 23 02:45:54 2016 +0000"
      },
      "message": "Merge \"Fix static analyzer warnings.\""
    },
    {
      "commit": "b509957e62ee151313a21f2732aa25aa2cfc65f9",
      "tree": "2ae6c639b6050d57fcf7067449dbc4148ee48681",
      "parents": [
        "45c0c6939fb71a9f4bd7d9f0d5dcbe275e6db405",
        "76f517a173f79ad5789810188c4c36d3238b6f66"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 23 01:51:51 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 23 01:51:52 2016 +0000"
      },
      "message": "Merge \"Bluetooth: report proper advertiser status on error\""
    },
    {
      "commit": "40db40878e9f7a25f63076d95d7c7859488290cb",
      "tree": "184001fa394dde538bf6f7603721f0bd11c3e157",
      "parents": [
        "45c0c6939fb71a9f4bd7d9f0d5dcbe275e6db405"
      ],
      "author": {
        "name": "Jeff Davidson",
        "email": "jpd@google.com",
        "time": "Fri Nov 18 15:48:15 2016 -0800"
      },
      "committer": {
        "name": "Jeff Davidson",
        "email": "jpd@google.com",
        "time": "Tue Nov 22 17:28:57 2016 -0800"
      },
      "message": "Expose TelephonyManager#{set,get}DataEnabled.\n\nsetDataEnabled requires MODIFY_PHONE_STATE or carrier privileges.\ngetDataEnabled will work with any of the above or\nACCESS_NETWORK_STATE.\n\nMerged-In: I2d5a9df2e55f3f7be1729abefe137c00ae1d6c4e\nTest: Exercised APIs from test app, updated and executed CTS tests\nChange-Id: I2d5a9df2e55f3f7be1729abefe137c00ae1d6c4e\nFixes: 32644451\n"
    },
    {
      "commit": "76f517a173f79ad5789810188c4c36d3238b6f66",
      "tree": "2ae6c639b6050d57fcf7067449dbc4148ee48681",
      "parents": [
        "45c0c6939fb71a9f4bd7d9f0d5dcbe275e6db405"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Tue Nov 22 12:44:22 2016 -0800"
      },
      "committer": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Tue Nov 22 13:38:15 2016 -0800"
      },
      "message": "Bluetooth: report proper advertiser status on error\n\nWhen advertiser is not started because too many advertisers are\nregistered, return proper error code.\n\nBug: 30622771\nTest: sl4a ConcurrentBleAdvertisingTest\nChange-Id: I57384ff30132e9a7ee17dcf191ff89baa7abf1ef\n"
    },
    {
      "commit": "0342ab5b9447481ad82740dde01595bf3c288e15",
      "tree": "e6bec185c8117cd62fb0baaebb8a7591c90789c2",
      "parents": [
        "c6c005ef5b927be1b49b4d18a0b887b571fb3ca4"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Nov 21 15:26:00 2016 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 22 12:27:53 2016 +0000"
      },
      "message": "Move JUnit classes from here into external/junit\n\nChecked that android.test.runner had the same classes in as\nbefore the change.\n\nThese classes are legacy 3.8.1 classes, they are not in 4.10 at\nall. They appear to have been left here by accident. Looking at\nthe history it appears that at one time there were copies of\nJUnit 3.8.1 junit.runner classes in frameworks and\nexternal/junit. The classes here were upgraded to 4.10 but even\nthough these classes had been deleted immediately after 3.8.2\nwas released they were not removed, instead they appear to have\nbeen reformatted as part of the upgrade. The external/junit\nsource was upgraded to 4.10 about two weeks later which seems to\nhave been done correctly. About three months after that the\nclasses here that were duplicates of those in external/junit\nwere removed from here leaving the legacy classes from 3.8.1.\n\nI could not find any usages of these classes and they are not in\nthe public API so they can probably be removed altogether.\nHowever, for now I will simply move them into external/junit as\ndescribed and remove them when upgrading JUnit there to 4.12.\n\nBug: 30188076\nTest: Built android.test.runner and checkapi\nChange-Id: I88687889315c041d999fe7e61b9652ac8406165c\n"
    },
    {
      "commit": "45c0c6939fb71a9f4bd7d9f0d5dcbe275e6db405",
      "tree": "8e477d851309c1ae792656a1072d8c606c2bf3d4",
      "parents": [
        "248c8311e8d2fa51188cb6c4f39d9f1966a4806b",
        "0754b27b568c5e181b4ac205b28dac003e82ca0d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 22 09:43:23 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 22 09:43:23 2016 +0000"
      },
      "message": "Merge \"Add SystemProperties.reportSyspropChanged().\""
    },
    {
      "commit": "248c8311e8d2fa51188cb6c4f39d9f1966a4806b",
      "tree": "60e721f9e3f710a18242815459598d4b20ab4693",
      "parents": [
        "6a56326109af5961e2e193103f2e5a17cc18ea36",
        "a32e50986ef767f50e68083a8ee345bab3ce1cca"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 22 00:03:43 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 22 00:03:43 2016 +0000"
      },
      "message": "Merge \"wifi: hotspot2: add copy constructor for PasspointConfiguration\""
    },
    {
      "commit": "6a56326109af5961e2e193103f2e5a17cc18ea36",
      "tree": "795e6d0f1fe9f0f7d769d284138f8168605593ca",
      "parents": [
        "9e4f111e0fddbf4b0ed5093940d22fd41db758bd",
        "73cdcf57877f94cefb76d2b1d160f59a2ce82df6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Nov 21 22:23:12 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 21 22:23:13 2016 +0000"
      },
      "message": "Merge \"Make voicemail notification broadcast public\""
    },
    {
      "commit": "9e4f111e0fddbf4b0ed5093940d22fd41db758bd",
      "tree": "5041337240c31ef51d63c1fcb4578e15850aeba7",
      "parents": [
        "67fe28d925aba4e5cee0cec3bb166fdee901d40d",
        "6831f93725f9efd9c13a278acac62a5d7dcf4a4d"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Mon Nov 21 21:43:39 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 21 21:43:40 2016 +0000"
      },
      "message": "Merge \"[AWARE] Update API per review\""
    },
    {
      "commit": "67fe28d925aba4e5cee0cec3bb166fdee901d40d",
      "tree": "30b9763167fb04afc748f677ee386973355d66b1",
      "parents": [
        "4db1632b3af9a2eeeac0bb904be2d794bc024616",
        "763a140796a93499a5ae69743d6ebb3378ea23e7"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Nov 21 21:33:15 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 21 21:33:15 2016 +0000"
      },
      "message": "Merge \"StrictMode to detect untagged network traffic.\""
    },
    {
      "commit": "4db1632b3af9a2eeeac0bb904be2d794bc024616",
      "tree": "e08cdb5962a02ab0fdb4dabd7655df3dc120b9c3",
      "parents": [
        "566b1c80e41263be596e0bc856d1fafda16666aa",
        "1324531355607dcabacd4e1ece9429910a0225f0"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Nov 21 20:10:28 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 21 20:10:29 2016 +0000"
      },
      "message": "Merge \"Stub Binder API.\""
    },
    {
      "commit": "763a140796a93499a5ae69743d6ebb3378ea23e7",
      "tree": "2d9670886b724ccf851eb029f47aa9ad9c36cbed",
      "parents": [
        "4a5789b9b102e683fc2da7d56a4a43e57d0cd32e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Nov 21 12:14:50 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Nov 21 12:15:16 2016 -0700"
      },
      "message": "StrictMode to detect untagged network traffic.\n\nDefine some constants for early use in AOSP code.\n\nTest: builds, boots, all common traffic tagged\nBug: 30943431\nChange-Id: Ia58a8933bccfddbc027afb78c63ae65bd71ce562\n"
    },
    {
      "commit": "6831f93725f9efd9c13a278acac62a5d7dcf4a4d",
      "tree": "e7247825da295ac9555ec5e7ac84866816507efc",
      "parents": [
        "566b1c80e41263be596e0bc856d1fafda16666aa"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Wed Nov 16 13:40:55 2016 -0800"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Mon Nov 21 18:23:39 2016 +0000"
      },
      "message": "[AWARE] Update API per review\n\n- Move Handler to last position\n- Peer ID changed from \u0027Object\u0027 -\u003e opaque class\n- Rename onMessageSent -\u003e onMessageSendSucceeded\n\n(cherry pick of commit 1fef08507aeb49bb2e4e7be4804a378ba2cf7770)\n\nBug: 31470256\nTest: unit tests \u0026 integration (sl4a) tests pass\nChange-Id: I5530d310e982ea16a63a5af1f704625fd24e436c\n"
    },
    {
      "commit": "1324531355607dcabacd4e1ece9429910a0225f0",
      "tree": "787b2f6fb334f1d2e0c118385b8a7afbd1a080a5",
      "parents": [
        "4a5789b9b102e683fc2da7d56a4a43e57d0cd32e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Nov 21 09:13:52 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Nov 21 18:11:25 2016 +0000"
      },
      "message": "Stub Binder API.\n\nProvide a stub API for AOSP code to call.\n\nTest: builds\nBug: 32715088\nChange-Id: Iab74d269e795a722e82fd3fa304200d57d152f57\n"
    },
    {
      "commit": "0754b27b568c5e181b4ac205b28dac003e82ca0d",
      "tree": "63f7b027ac73e4a47737222c50c6f7ba36611ad2",
      "parents": [
        "c6c005ef5b927be1b49b4d18a0b887b571fb3ca4"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Thu Nov 17 14:06:38 2016 +0100"
      },
      "committer": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Mon Nov 21 17:57:13 2016 +0000"
      },
      "message": "Add SystemProperties.reportSyspropChanged().\n\nTo support notifying libutils of system property\nchanges.\n\nBug: 31262344\nTest: builds\nChange-Id: Iea77532eaa84d00f7d640edd1e3a1da66afdadc5\n"
    },
    {
      "commit": "566b1c80e41263be596e0bc856d1fafda16666aa",
      "tree": "2a616d2bec1643719f0c346275421abdda8fb32d",
      "parents": [
        "c6c005ef5b927be1b49b4d18a0b887b571fb3ca4",
        "3b6ca99b1069e8f303727a00c1da7acabe017fd8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Nov 21 16:54:52 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 21 16:54:53 2016 +0000"
      },
      "message": "Merge \"Precreate the classloader for the WebView.\""
    },
    {
      "commit": "3b6ca99b1069e8f303727a00c1da7acabe017fd8",
      "tree": "1f99e1e944f4c4f3d5ecb08b78a88ad63ad8d608",
      "parents": [
        "82c9ba9c55c20b6e26a49c15c5f08f0c66e27d9b"
      ],
      "author": {
        "name": "Torne (Richard Coles)",
        "email": "torne@google.com",
        "time": "Mon Oct 10 15:11:36 2016 +0100"
      },
      "committer": {
        "name": "Torne (Richard Coles)",
        "email": "torne@google.com",
        "time": "Mon Nov 21 15:04:13 2016 +0000"
      },
      "message": "Precreate the classloader for the WebView.\n\nWe want to create the classloader for the WebView in advance in the\nzygote so that it can preload Java and native code for its children, but\nthe zygote can\u0027t talk to the package manager (so doesn\u0027t have a\nPackageInfo for the APK) and also doesn\u0027t have an ActivityThread, so\nconstructing a LoadedApk is difficult.\n\nInstead, we use the fact that ApplicationLoaders contains a\nprocess-global cache of classloaders for APKs, and prepopulate a cache\nentry without constructing a LoadedApk. This requires making\nApplicationLoaders public. To calculate the correct library paths from\nthe information the zygote has, we reuse the logic in LoadedApk (which\nis already public, and just needs a small change to allow a null\nActivityThread when checking for instrumentation).\n\nThe other parameters for classloader creation (target SDK, bundled app,\netc) are hardcoded to usable values for the WebView\u0027s case. WebView\nnever needs to use any system libraries that aren\u0027t public so claiming\nit\u0027s not bundled is fine even when that isn\u0027t actually true, and WebView\nwill always target the current platform API level.\n\nOnce the classloader is created, look up the factory class and call\npreloadInZygote on it to give it a chance to preload the native library\nand do other shared initialisation.\n\nBug: 21643067\nTest: enable multiprocess WebView, examine librank output to see sharing\nChange-Id: I696ead637e3f7382bcc58cfaf61eac5921862015\n"
    },
    {
      "commit": "c6c005ef5b927be1b49b4d18a0b887b571fb3ca4",
      "tree": "0659825008208379644ecca50afdd9f6b9041e1a",
      "parents": [
        "757e286cc8637aa6cd7ecaabb991539e99c6950a",
        "c46d1b44ebc7c09ac2bc66fdb32324ea8ef9f89b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 18 23:08:55 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 18 23:08:56 2016 +0000"
      },
      "message": "Merge \"Split libhidl into base and transport.\""
    },
    {
      "commit": "757e286cc8637aa6cd7ecaabb991539e99c6950a",
      "tree": "312789d956067b219d1a418ab54f792574a7f771",
      "parents": [
        "3cbf2c265735dc482c0afafc80f88fe2c68b6e60",
        "3ff4226363c9f87fb5d0792fabad66034fb28614"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 18 22:30:41 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 18 22:30:42 2016 +0000"
      },
      "message": "Merge \"Fix incorrect calculation of sizeof package structure\""
    },
    {
      "commit": "3cbf2c265735dc482c0afafc80f88fe2c68b6e60",
      "tree": "793fb1773f29ab9af4b1588cfb982ed15b407ca5",
      "parents": [
        "06d619ccfa42a1f476012af1d21700f8c6126fb3",
        "5a18072fed95ae41f2367e6d1c24975d303cf73a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 18 20:44:14 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 18 20:44:14 2016 +0000"
      },
      "message": "Merge \"Customization of LTE Signal Bars\""
    },
    {
      "commit": "06d619ccfa42a1f476012af1d21700f8c6126fb3",
      "tree": "1051609bb64697bbd82512ac04175361892484a2",
      "parents": [
        "1bfab3de31c28731f02e7af959a766ebdfd5c083",
        "e9556a89dbd7c1ab23b431a26e05cbad9e4d3b38"
      ],
      "author": {
        "name": "Selim Cinek",
        "email": "cinek@google.com",
        "time": "Fri Nov 18 19:39:30 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 18 19:39:30 2016 +0000"
      },
      "message": "Merge \"Share one receiver for CurrentUserTracker\""
    },
    {
      "commit": "1bfab3de31c28731f02e7af959a766ebdfd5c083",
      "tree": "0cab93b912f4db3d050437a026433d92ac809528",
      "parents": [
        "ebb722d04af4aa8626e32e0e8a9b885b11d03c0f",
        "e4b841e7576b36a5e5568a17f235b1c14f0a85e3"
      ],
      "author": {
        "name": "Selim Cinek",
        "email": "cinek@google.com",
        "time": "Fri Nov 18 19:39:09 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 18 19:39:10 2016 +0000"
      },
      "message": "Merge \"Brightness mirror - fix multi-touch issue\""
    },
    {
      "commit": "ebb722d04af4aa8626e32e0e8a9b885b11d03c0f",
      "tree": "976b4ba3ea72713c01379d11267318d97b26a2c6",
      "parents": [
        "c02a4a46139761f1bb06540007a322dbd83fea0a",
        "a25d717de870895be52e81b585a8484fff0c6109"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 18 08:45:15 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 18 08:45:15 2016 +0000"
      },
      "message": "Merge \"wifi: hotspot2: add support for validating passpoint configuration\""
    },
    {
      "commit": "c02a4a46139761f1bb06540007a322dbd83fea0a",
      "tree": "86d604e4443267b4d3ad9eeb45880e85982194b0",
      "parents": [
        "f77c220aa9233f7bb8418d01f7c512bcca7d3f74",
        "008a08dcee1b43cbd3a0bf8755b1eb6fe0e3ba48"
      ],
      "author": {
        "name": "Chris Tate",
        "email": "ctate@android.com",
        "time": "Fri Nov 18 01:23:31 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 18 01:23:31 2016 +0000"
      },
      "message": "Merge \"Schedule  agentDisconnected() in handler thread\""
    },
    {
      "commit": "c46d1b44ebc7c09ac2bc66fdb32324ea8ef9f89b",
      "tree": "8722fb74061bd49646db339b9978b291a5914328",
      "parents": [
        "f77c220aa9233f7bb8418d01f7c512bcca7d3f74"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Nov 16 15:48:49 2016 -0800"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Fri Nov 18 00:03:59 2016 +0000"
      },
      "message": "Split libhidl into base and transport.\n\nBug: 32756130\n\nTest: mma\nChange-Id: I0df309a1096b663cc51ce8badacf05e2a47836a8\n"
    },
    {
      "commit": "f77c220aa9233f7bb8418d01f7c512bcca7d3f74",
      "tree": "a5a5b2e2522a5b1e1d8f4e2caf0b16b748a8a324",
      "parents": [
        "d51df736f68dd0add89b27a6a07ecb6b0cb520fa",
        "a5b7b8916622d44661b6e7936c9b738655a06f3b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 17 23:52:59 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 17 23:53:00 2016 +0000"
      },
      "message": "Merge \"Avoid starving RT anims\""
    },
    {
      "commit": "a5b7b8916622d44661b6e7936c9b738655a06f3b",
      "tree": "01a30be183067a9ba7c3046cb31c511f152d9384",
      "parents": [
        "8631e19d3883ce6887c09f72eb394f2e22c9cb64"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Nov 15 10:22:01 2016 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Nov 17 22:05:22 2016 +0000"
      },
      "message": "Avoid starving RT anims\n\nTest: Manual, usleep(16000) in DrawFrameTask and tap\non recents\n\nMerged-In: I88bb30a2503bc908ec45650c7d36b6fb3cc750d0\n\nChange-Id: I88bb30a2503bc908ec45650c7d36b6fb3cc750d0\n"
    },
    {
      "commit": "d51df736f68dd0add89b27a6a07ecb6b0cb520fa",
      "tree": "b6c7a91a0a2d64332dde78103e89765f166c84cd",
      "parents": [
        "f68cb55cc1ef7ad0cf8684d0b31a995edcc4f4a3",
        "0c3541be65fa87519a879c053a7cf4b4526be5db"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Thu Nov 17 19:18:00 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 17 19:18:00 2016 +0000"
      },
      "message": "Merge \"Readability improvements in Logging\""
    },
    {
      "commit": "f68cb55cc1ef7ad0cf8684d0b31a995edcc4f4a3",
      "tree": "c81dd298c74b10f39f7ccd413823cca0fc7be394",
      "parents": [
        "caa816451cb7394b28950b918d67f0cec64c58ce",
        "43b1b3ff0b92eb4ef97038176a26ea05679b592d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 17 18:37:41 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 17 18:37:42 2016 +0000"
      },
      "message": "Merge \"Fix coretests: Remove dependency on libnativehelper\""
    },
    {
      "commit": "caa816451cb7394b28950b918d67f0cec64c58ce",
      "tree": "4d67ce2e005fc94d2f704ad54512d3e1c8294daa",
      "parents": [
        "3ebcf1218b448b93f7804e0d5c96c6915014ca78",
        "d96bbb238f5e6de946a55d9c2bcb6a8fb06efee5"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Thu Nov 17 15:28:52 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 17 15:28:53 2016 +0000"
      },
      "message": "Merge \"Track libcore change Ib691c81b158ec37419a903bfa4261a12139fbff7\""
    },
    {
      "commit": "3ff4226363c9f87fb5d0792fabad66034fb28614",
      "tree": "3c137c85edf0147dd2b0f8aeb9270ed943ecdec8",
      "parents": [
        "3ebcf1218b448b93f7804e0d5c96c6915014ca78"
      ],
      "author": {
        "name": "Wan He",
        "email": "xiaolin.gxl@alibaba-inc.com",
        "time": "Thu Nov 17 17:49:37 2016 +0800"
      },
      "committer": {
        "name": "Wan He",
        "email": "xiaolin.gxl@alibaba-inc.com",
        "time": "Thu Nov 17 18:05:20 2016 +0800"
      },
      "message": "Fix incorrect calculation of sizeof package structure\n\nArgument \"package\" is a pointer, not the structure.\n\nSigned-off-by: Wan He \u003cxiaolin.gxl@alibaba-inc.com\u003e\n"
    },
    {
      "commit": "3ebcf1218b448b93f7804e0d5c96c6915014ca78",
      "tree": "d9999c449d7ea176f554e6e74a2184942f0573c5",
      "parents": [
        "a908e65b66f9de251a4c610cb52673f2be3de4b4",
        "eb067ba741f0dc55cd3b8c0f84776191c6d01809"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 17 06:58:42 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 17 06:58:43 2016 +0000"
      },
      "message": "Merge \"Don\u0027t disconnect an A2DP device when connecting to same device\""
    },
    {
      "commit": "eb067ba741f0dc55cd3b8c0f84776191c6d01809",
      "tree": "d9999c449d7ea176f554e6e74a2184942f0573c5",
      "parents": [
        "a908e65b66f9de251a4c610cb52673f2be3de4b4"
      ],
      "author": {
        "name": "Pavlin Radoslavov",
        "email": "pavlin@google.com",
        "time": "Wed Nov 16 20:51:06 2016 -0800"
      },
      "committer": {
        "name": "Andre Eisenbach",
        "email": "eisenbach@google.com",
        "time": "Thu Nov 17 05:29:08 2016 +0000"
      },
      "message": "Don\u0027t disconnect an A2DP device when connecting to same device\n\nWhen processing a connect request for an A2DP device, Settings\nwould trigger a disconnect request for all A2DP devices that\nhave state of CONNECTED, CONNECTING or DISCONNECTING, including\neventually the device we are connecting to.\nThis could create timing-related issues, and is not necessary.\nNow we explicitly check to avoid disconnecting the device we are\nconnecting to.\n\nTest: Manual A2DP testing with a phone and wireless headsets\nBug: 32688022\nChange-Id: I572dd87c071829b734513c4b928a4d65fe539520\n"
    },
    {
      "commit": "43b1b3ff0b92eb4ef97038176a26ea05679b592d",
      "tree": "a7f22651020d32dbc946c7ff7eeca3de1e821b30",
      "parents": [
        "efd7b9f57dea8a0894fd96d868704de383ef05e5"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Nov 16 18:28:04 2016 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Nov 16 18:35:35 2016 -0800"
      },
      "message": "Fix coretests: Remove dependency on libnativehelper\n\nThis dependency was never needed and it makes test app\ndepend on private platform libraries - which is no longer allowed.\n\nThis change fixes these problems by removing dependency and renaming\nJNI method.\n\nTest: Install the test and start it.\nChange-Id: I9878627148917c1b5928b98f3c86f6e6097093d6\n"
    },
    {
      "commit": "a908e65b66f9de251a4c610cb52673f2be3de4b4",
      "tree": "a9b6c6d511f1e203316aa94113e113fed347dcdc",
      "parents": [
        "b37d826204025ea9b33d8d733e1282a5e1eb0822",
        "4a79ac2c82963d77c61bdc36bc82c912139721eb"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 17 02:10:23 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 17 02:10:23 2016 +0000"
      },
      "message": "Merge \"wifi: add constant definition for EAP types\""
    },
    {
      "commit": "e9556a89dbd7c1ab23b431a26e05cbad9e4d3b38",
      "tree": "49b0535ffd2ec496a35ce2a009c2d565f998d418",
      "parents": [
        "b37d826204025ea9b33d8d733e1282a5e1eb0822"
      ],
      "author": {
        "name": "dooyoung.hwang",
        "email": "dooyoung.hwang@lge.com",
        "time": "Fri Nov 11 17:23:00 2016 +0900"
      },
      "committer": {
        "name": "dooyoung.hwang",
        "email": "dooyoung.hwang@lge.com",
        "time": "Thu Nov 17 09:47:28 2016 +0900"
      },
      "message": "Share one receiver for CurrentUserTracker\n\nEach CurrentUserTracker has one receiver per one object.\nThis could cause unnecessary transaction as Tracker counts\nincreases. The idea of redcuing receiver is creating\none static receiver for CurrentUserTracker and share it\nwith all object.\n\nTest: Check if Quicksetting order is changed properly\nafter switching user.\n\nChange-Id: I8404829826391f8b315b42bbd0f50e77b783eeab\n"
    },
    {
      "commit": "b37d826204025ea9b33d8d733e1282a5e1eb0822",
      "tree": "0a0fa49ac11dabae6920afcff3f652cccc612497",
      "parents": [
        "a3c0324824e8434406def74e9239d446cb62cd93",
        "935372bfd642f15afc6488f7df100f1bf76fc773"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Wed Nov 16 23:59:32 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 16 23:59:33 2016 +0000"
      },
      "message": "Merge changes from topic \u0027usb_bugfixes-mirror-aosp-master\u0027\n\n* changes:\n  Refactored setCurrentFunction and setUsbDataUnlocked into single method.\n  Clean up persistent usb state on boot.\n  Fixed handling of usb state during adb changes.\n"
    },
    {
      "commit": "a3c0324824e8434406def74e9239d446cb62cd93",
      "tree": "d062eb5ea90a6286541a94a87ab1374946bc1fe3",
      "parents": [
        "efd7b9f57dea8a0894fd96d868704de383ef05e5",
        "d150b2b001a49f2d57a99cf3173e4f3b21bd0e3c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 16 23:42:24 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 16 23:42:25 2016 +0000"
      },
      "message": "Merge \"Add security capabilities enums to ScanResult\""
    },
    {
      "commit": "a32e50986ef767f50e68083a8ee345bab3ce1cca",
      "tree": "04d8ed2a37f54a56f80203ec6d256475324e07c6",
      "parents": [
        "a25d717de870895be52e81b585a8484fff0c6109"
      ],
      "author": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Wed Nov 16 15:17:48 2016 -0800"
      },
      "committer": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Wed Nov 16 15:35:48 2016 -0800"
      },
      "message": "wifi: hotspot2: add copy constructor for PasspointConfiguration\n\nBug: 32714562\nTest: frameworks/base/wifi/tests/runtests.sh\nChange-Id: Ida7e4da3d6a9679743397643e0250434dbdb43af\n"
    },
    {
      "commit": "a25d717de870895be52e81b585a8484fff0c6109",
      "tree": "7d8da317cb289072019be190740e40213fa13fc3",
      "parents": [
        "4a79ac2c82963d77c61bdc36bc82c912139721eb"
      ],
      "author": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Tue Nov 01 14:50:59 2016 -0700"
      },
      "committer": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Wed Nov 16 15:08:03 2016 -0800"
      },
      "message": "wifi: hotspot2: add support for validating passpoint configuration\n\nBug: 32572199\nTest: frameworks/base/wifi/tests/runtests.sh\nChange-Id: I8e649430af54d863dfa5492abc3dfd79c772c765\n"
    },
    {
      "commit": "4a79ac2c82963d77c61bdc36bc82c912139721eb",
      "tree": "957ebd1fb66748931ded2c0ead7c319e6bb8c102",
      "parents": [
        "efd7b9f57dea8a0894fd96d868704de383ef05e5"
      ],
      "author": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Fri Nov 11 09:18:26 2016 -0800"
      },
      "committer": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Wed Nov 16 13:49:22 2016 -0800"
      },
      "message": "wifi: add constant definition for EAP types\n\nBug: 32810711\nTest: frameworks/base/wifi/tests/runtests.sh\nChange-Id: Ia62f2674e8cdf975d1380f733a8687bdb15ed197\n"
    },
    {
      "commit": "d150b2b001a49f2d57a99cf3173e4f3b21bd0e3c",
      "tree": "d062eb5ea90a6286541a94a87ab1374946bc1fe3",
      "parents": [
        "efd7b9f57dea8a0894fd96d868704de383ef05e5"
      ],
      "author": {
        "name": "Ningyuan Wang",
        "email": "nywang@google.com",
        "time": "Tue Nov 01 15:36:10 2016 -0700"
      },
      "committer": {
        "name": "Ningyuan Wang",
        "email": "nywang@google.com",
        "time": "Wed Nov 16 11:13:42 2016 -0800"
      },
      "message": "Add security capabilities enums to ScanResult\n\nThis adds enums of security parameters, including\nprotocol, key management, and cipher suites.\n\nBug: 32512793\nTest: compile\n\nChange-Id: Ibf784d79695ca5e261c6bfe623406bc693c5ac17\n"
    },
    {
      "commit": "0c3541be65fa87519a879c053a7cf4b4526be5db",
      "tree": "7ea3e6055b8cb8668db81449004ede5c730f54ec",
      "parents": [
        "8631e19d3883ce6887c09f72eb394f2e22c9cb64"
      ],
      "author": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Tue Nov 01 14:11:38 2016 -0700"
      },
      "committer": {
        "name": "Brad Ebinger",
        "email": "breadley@google.com",
        "time": "Wed Nov 16 11:05:15 2016 -0800"
      },
      "message": "Readability improvements in Logging\n\nWe now truncate Session method paths and IDs based on the Logging level\nto improve Session Logging readability in logcat. If another external\nsession is started off of an existing external Session, the preceding\nhistories are replaced with \"...\" so that the Session information is not\noverwhelming.\n\nBug: 26571395\nTest: Unit Tests and manual tests pass\nChange-Id: I9ffda3d64f1072fa6228a82a86116a5e47d18c96\n"
    },
    {
      "commit": "efd7b9f57dea8a0894fd96d868704de383ef05e5",
      "tree": "9e9a0649af0f5448b57a063869db4c6a579b16bf",
      "parents": [
        "3b379ee94e049bedaddb504136b9fb3d5113cab6",
        "ddf31f604ee2024daaf50ac309e7fcaf29d7b43c"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Nov 16 19:01:00 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 16 19:01:00 2016 +0000"
      },
      "message": "Merge \"Fix include after spliting HidlSupport.h\""
    },
    {
      "commit": "3b379ee94e049bedaddb504136b9fb3d5113cab6",
      "tree": "a29b760b8385b3c3dff124275625fcfe99348d6a",
      "parents": [
        "87cafe8f3338439bbad9ab8347a488e54ef0b925",
        "da69216ac681189c6b92f5252df442958ee9d927"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 16 18:15:05 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 16 18:15:06 2016 +0000"
      },
      "message": "Merge \"Preload2: Fix dependencies\""
    },
    {
      "commit": "87cafe8f3338439bbad9ab8347a488e54ef0b925",
      "tree": "c352beb6b8be5876695d73b58794531b2d94ec04",
      "parents": [
        "224d9e48fab1a83d16f9132a42d8a747651b0529",
        "90213f341d867241a2bf7980ff045a9ba96d31bc"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Wed Nov 16 09:48:30 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 16 09:48:31 2016 +0000"
      },
      "message": "Merge \"Fix deprecated range_x calls.\""
    },
    {
      "commit": "224d9e48fab1a83d16f9132a42d8a747651b0529",
      "tree": "4ad360761383d1018db426abed061faca008752e",
      "parents": [
        "1813ae0159cda05a6882c77714f25718fc67c311",
        "0c3149191fbbfdc5242f8dd8a02f561f1ce604c3"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 16 07:55:26 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 16 07:55:27 2016 +0000"
      },
      "message": "Merge \"CountDownTimer: not skip onTick()\""
    },
    {
      "commit": "1813ae0159cda05a6882c77714f25718fc67c311",
      "tree": "f2fe26adcea18bf66cb2cfabf57106550d6ed038",
      "parents": [
        "41fd0f1faf68acff5928d133aabb55bfb019a873",
        "bc62b218df0bf6b83169cd82420e2701ae13a5ea"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 16 02:54:25 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Nov 16 02:54:26 2016 +0000"
      },
      "message": "Merge \"Fixed the issue when some apps were gone and couldn\u0027t be installed successfully after updating from KK to M via OTA.\""
    },
    {
      "commit": "ddf31f604ee2024daaf50ac309e7fcaf29d7b43c",
      "tree": "a213d64ac1ee3bbc1433b24ba6534fe26bb9973a",
      "parents": [
        "8631e19d3883ce6887c09f72eb394f2e22c9cb64"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Nov 15 16:02:40 2016 -0800"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Nov 15 16:02:40 2016 -0800"
      },
      "message": "Fix include after spliting HidlSupport.h\n\nTest: mma\n\nBug: 32756130\nChange-Id: Ia4fa02726d79681753fe9c8c7135a28fffb508b4\n"
    },
    {
      "commit": "e4b841e7576b36a5e5568a17f235b1c14f0a85e3",
      "tree": "d0c5f031d96ad18fcdbd7a2a3d8388a3d6327ad5",
      "parents": [
        "41fd0f1faf68acff5928d133aabb55bfb019a873"
      ],
      "author": {
        "name": "dooyoung.hwang",
        "email": "dooyoung.hwang@lge.com",
        "time": "Wed Nov 16 08:59:23 2016 +0900"
      },
      "committer": {
        "name": "dooyoung.hwang",
        "email": "dooyoung.hwang@lge.com",
        "time": "Wed Nov 16 08:59:23 2016 +0900"
      },
      "message": "Brightness mirror - fix multi-touch issue\n\nThe issue is that QSPanel get touch event while brightness mirros\nis showing after density changes. This is because StatusBarWindowView\nkeeps the reference of detached brightness mirror view. We can refresh\nit at onViewAdded function.\n\nTest: manual(change device density \u003e Check if can click QuickSettings\nwhile dragging brightness slider.)\n\nChange-Id: I646092abbc23b24bb91fc5c8525b12a143364b84\n"
    },
    {
      "commit": "41fd0f1faf68acff5928d133aabb55bfb019a873",
      "tree": "74962c73d1ab5454e9f27d9b0e44518bab6b6d77",
      "parents": [
        "8631e19d3883ce6887c09f72eb394f2e22c9cb64",
        "1c3054ea8740f29af7d8285c4d86a1ca375b4b77"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 15 23:50:16 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 15 23:50:18 2016 +0000"
      },
      "message": "Merge changes from topic \u0027HS2 API Cleanup\u0027\n\n* changes:\n  wifi: remove unused hidden Hotspot 2.0 Release 1 API\n  wifi: remove hidden unused Hotspot 2.0 Release 2 APIs\n"
    },
    {
      "commit": "935372bfd642f15afc6488f7df100f1bf76fc773",
      "tree": "5eed96a0000b88890f77a730cecf031f8697099b",
      "parents": [
        "dfacad026dfc1582504969f8b268e7c3970c4496"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Wed Oct 12 15:49:32 2016 -0700"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue Nov 15 15:29:45 2016 -0800"
      },
      "message": "Refactored setCurrentFunction and setUsbDataUnlocked into single method.\n\nThis gets rid of an extraneous configuration change when going from\nadb to adb + file transfer as previously the config would have been\nreset once for functions and once for data unlocked.\n\nIt also simplifies some of the code.\n\nTest: manually changing usb configurations\nChange-Id: Ica10a195338b2189db13113f44657393db110bee\n(cherry picked from commit 7a396be6d5ba8914933a54b5bfac25e118db0e9f)\n"
    },
    {
      "commit": "dfacad026dfc1582504969f8b268e7c3970c4496",
      "tree": "68e24f7015bf18a76f62135ebd79cd99b3e5323b",
      "parents": [
        "0269ebe0fe86d9fbe2aaa624fbe96d340b58c04b"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon Oct 17 17:37:13 2016 -0700"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue Nov 15 15:29:36 2016 -0800"
      },
      "message": "Clean up persistent usb state on boot.\n\nb/31814300 was fixed, but mtp can still stick around in the\npersistent config even after flashing. This block of code\nwill only run once, but will ensure that mtp is not in\nthe config after the update.\n\nBug: 31814300\nTest: Manual\nChange-Id: Icf02be38c9e1f769412ac963ed6afc14e6092bfb\n(cherry-picked from commit a45dac0e83f4f907b6b42f453181a7d5c01f65f3)\n"
    },
    {
      "commit": "0269ebe0fe86d9fbe2aaa624fbe96d340b58c04b",
      "tree": "0863e0d1ac4c765810de52bbdb48269cd1702acc",
      "parents": [
        "0bebfe76fc216ce2b1b7405eec93c9fe21f5a059"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Wed Oct 12 18:04:03 2016 -0700"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue Nov 15 15:29:22 2016 -0800"
      },
      "message": "Fixed handling of usb state during adb changes.\n\nWhen changing state to adb from mtp (charging), we want to disable\nthe old mtp function. Similarly when change to away from adb to\ncharging, enable the mtp function.\n\nAlso the mtp function should never be persisted.\n\nBug: 31818377\nBug: 31814300\nTest: Manually verify that the correct usb configuration is displayed.\nTest: Manually verify that logcat is not kicked during boot.\nChange-Id: Idcb7f53be39ea38712d5de45b323d8daeb552129\n(cherry-picked from commit 58018d01a3c384b954275d15bee7f9c52a1c7c0a)\n"
    },
    {
      "commit": "8631e19d3883ce6887c09f72eb394f2e22c9cb64",
      "tree": "0614b26c84d7bdca31ba39e12d2a4e435f7bc8cb",
      "parents": [
        "e9514808d7c98d8264ce8ca3c599800c55b934f5",
        "c66ec40d38e8d51a7351d37e9c08260aae0737a7"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Nov 15 16:39:42 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 15 16:39:42 2016 +0000"
      },
      "message": "Merge \"Correctly handle when the user has no explicit time_12_24 setting\""
    },
    {
      "commit": "90213f341d867241a2bf7980ff045a9ba96d31bc",
      "tree": "f8614cd228135e6fe58205dcf6803c78769e547f",
      "parents": [
        "e9514808d7c98d8264ce8ca3c599800c55b934f5"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Mon Nov 14 14:56:03 2016 +0100"
      },
      "committer": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Tue Nov 15 09:07:12 2016 +0100"
      },
      "message": "Fix deprecated range_x calls.\n\nTest: builds\nChange-Id: I98412e51a54ef9f9e26c72ecd810dcea77aefdbb\n"
    },
    {
      "commit": "e9514808d7c98d8264ce8ca3c599800c55b934f5",
      "tree": "0834f1a6c63b466dd97b89550a787af26873596d",
      "parents": [
        "8cc1343724b21dd32b57c4f6469148305ed75f4e",
        "28a3d44536337605511856cdfa6544b573cb7cf1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 15 03:59:57 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 15 03:59:57 2016 +0000"
      },
      "message": "Merge \"osu: remove calls to deprecated APIs\""
    },
    {
      "commit": "da69216ac681189c6b92f5252df442958ee9d927",
      "tree": "e94072ae6931885b50231b084007584ba8ee019e",
      "parents": [
        "584b5cee49f1da297c7e2a4a5568110fa4ad4e3e"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 14 19:08:22 2016 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 14 19:08:22 2016 -0800"
      },
      "message": "Preload2: Fix dependencies\n\nAlso depend on and package tools-common.\n\nTest: m\nTest: preload-tool\nChange-Id: I19a8844f87417f2292e50ffaaebb5fa24a2eca24\n"
    },
    {
      "commit": "8cc1343724b21dd32b57c4f6469148305ed75f4e",
      "tree": "bf3b33c77a27c58a5e7fb4e582936cddcbf8bf5d",
      "parents": [
        "584b5cee49f1da297c7e2a4a5568110fa4ad4e3e",
        "3bb65781ec5aa73d25dc684f53f6b46752a12838"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 15 02:59:51 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 15 02:59:52 2016 +0000"
      },
      "message": "Merge \"Update for removing read/writeEmbeddedFrom/ToParcel methods.\""
    },
    {
      "commit": "28a3d44536337605511856cdfa6544b573cb7cf1",
      "tree": "869cac463b11ca5536b97e5dfda31d892cc4596a",
      "parents": [
        "584b5cee49f1da297c7e2a4a5568110fa4ad4e3e"
      ],
      "author": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Mon Nov 14 15:18:09 2016 -0800"
      },
      "committer": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Tue Nov 15 02:12:57 2016 +0000"
      },
      "message": "osu: remove calls to deprecated APIs\n\nThe hidden APIs WifiManager#addPasspointManagmentObject and\nWifiManager#addPasspointManagementObject will removed, so remove\nall callsites.\n\nThe OSU app is still under developement and is not included\nin any device builds.  However, it is being built by the Treehugger\nfor generic AOSP builds.\n\nSo fix it to allow the API removal CLs to be submitted.\n\nBug: 32509661\nTest: None\nMerged-In: Ic405695ee8edfd0c08b831834797f163fe445595\nChange-Id: If418c64e69f1836575257b9d5b2f5c4373050a31\n"
    },
    {
      "commit": "73cdcf57877f94cefb76d2b1d160f59a2ce82df6",
      "tree": "eee1e95b806f4a7d2385533e6909d0b865afd5c9",
      "parents": [
        "836e74052e16f4c24c3e7e9eab0dbcaee462986f"
      ],
      "author": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Mon Nov 14 16:34:01 2016 -0800"
      },
      "committer": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Mon Nov 14 16:48:23 2016 -0800"
      },
      "message": "Make voicemail notification broadcast public\n\nFixes: 32884372\nBug: 32414216\nTest: CTS Verifier -\u003e Telephony -\u003e Voicemail Broadcast Test\n\nChange-Id: Id11d68bc154517a0965c8368a85013128e6b0b58\n"
    },
    {
      "commit": "1c3054ea8740f29af7d8285c4d86a1ca375b4b77",
      "tree": "01b139c0feaa5f5b8b9311ea014cfbbfbb3c8db3",
      "parents": [
        "a38558b539f3ac3f7dfe6217b1669a56cb39027a"
      ],
      "author": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Mon Oct 31 15:55:15 2016 -0700"
      },
      "committer": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Mon Nov 14 13:23:01 2016 -0800"
      },
      "message": "wifi: remove unused hidden Hotspot 2.0 Release 1 API\n\nWifiManager#buildWifiConfig was used by the Hotspot 2.0 Release 1\napp (WifiInstaller) for parsing Release 1 installation data into\na WifiConfiguration object.  WifiInstaller will be updated to use\nthe new framework API (android.net.wifi.hotspot2.ConfigBuilder)\ninstead. So this API is no longer needed.\n\nBug: 32509661\nTest: frameworks/base/wifi/tests/runtests.sh\nChange-Id: Iacee739a9ed12ea00b1b7457e22e790ef4a177da\n"
    },
    {
      "commit": "a38558b539f3ac3f7dfe6217b1669a56cb39027a",
      "tree": "47132b75e936b1d69100a4d21372f3a18de89443",
      "parents": [
        "584b5cee49f1da297c7e2a4a5568110fa4ad4e3e"
      ],
      "author": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Mon Oct 31 15:13:35 2016 -0700"
      },
      "committer": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Mon Nov 14 13:23:01 2016 -0800"
      },
      "message": "wifi: remove hidden unused Hotspot 2.0 Release 2 APIs\n\nThese APIs are used for installing/modifying the PerProviderSubscription\nManagement Object tree in XML string representation and are used only by\nthe unreleased Hotspot 2.0 Release 2 app (OSU app).  The OSU app will be\nupdated to use the new APIs which uses Parcelable objects to represent\nprovider configuration.\n\nBug: 32509661\nTest: frameworks/base/wifi/tests/runtests.sh\nChange-Id: Iff6b6e4b95b76d48201eeeb47f441b7c94f359bb\n"
    },
    {
      "commit": "584b5cee49f1da297c7e2a4a5568110fa4ad4e3e",
      "tree": "22ec2bb607c96ed6b57d83f9d68db220e0334d97",
      "parents": [
        "f5c32a411c12d1fbd6d38607ae507ffe3714ef76",
        "0efa843e7281fc23ccec2587ba9a0304cb478dbe"
      ],
      "author": {
        "name": "Sohani Rao",
        "email": "sohanirao@google.com",
        "time": "Mon Nov 14 20:59:35 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 14 20:59:36 2016 +0000"
      },
      "message": "Merge \"Add WiFi toggle prompts - framework\""
    },
    {
      "commit": "f5c32a411c12d1fbd6d38607ae507ffe3714ef76",
      "tree": "eede6c1c49bcb7b3b28751c9a583a93d4f51fc4b",
      "parents": [
        "8223dc1ae97ed48e6d22c9f7e8d34adc2ead53bb",
        "ef401300e8a9f819fa7b1c8c20b9800cc24ce489"
      ],
      "author": {
        "name": "Sohani Rao",
        "email": "sohanirao@google.com",
        "time": "Mon Nov 14 19:21:57 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 14 19:21:58 2016 +0000"
      },
      "message": "Merge \"Permissions check for Wifi Display configuration\""
    },
    {
      "commit": "0efa843e7281fc23ccec2587ba9a0304cb478dbe",
      "tree": "7f72fb618b09998754d9a85df7fe8c67ede9d644",
      "parents": [
        "264d1f12a304bab2c6f9e5053990a86c3060fdc2"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jul 26 18:23:01 2016 -0700"
      },
      "committer": {
        "name": "Sohani Rao",
        "email": "sohanirao@google.com",
        "time": "Mon Nov 14 10:26:52 2016 -0800"
      },
      "message": "Add WiFi toggle prompts - framework\n\nIf permission review is enabled toggling WiFi on or off\nresults in a user prompt to collect a consent. This applies\nonly to legacy apps, i.e. ones that don\u0027t support runtime\npermissions as they target SDK 22.\n\nBug: 28715749\nTest: Unit Tests\n\nChange-Id: I020601e208c0736005bcabc7b7b77b96eee45b03\nMerged-In: I020601e208c0736005bcabc7b7b77b96eee45b03\n"
    },
    {
      "commit": "ef401300e8a9f819fa7b1c8c20b9800cc24ce489",
      "tree": "aa2d09e1d07d8f4ad60eb68328e482ec99d86f39",
      "parents": [
        "264d1f12a304bab2c6f9e5053990a86c3060fdc2"
      ],
      "author": {
        "name": "Sohani Rao",
        "email": "sohanirao@google.com",
        "time": "Thu Sep 29 16:20:45 2016 -0700"
      },
      "committer": {
        "name": "Sohani Rao",
        "email": "sohanirao@google.com",
        "time": "Mon Nov 14 10:21:31 2016 -0800"
      },
      "message": "Permissions check for Wifi Display configuration\n\nWifi Display is configured using the AIDL call setMiracastMode()\nand using a message over the async channel SET_WFD_INFO.\nEnforce permissions on the calling uid before updating the config\n\nBug: 18668877\nTest: Unit tests\nChange-Id: I0be2d2af49070aad759f24bd31331f7df39a0422\nMerged-In: I0be2d2af49070aad759f24bd31331f7df39a0422\n"
    },
    {
      "commit": "8223dc1ae97ed48e6d22c9f7e8d34adc2ead53bb",
      "tree": "c993a42881d8e371a3618326cc1c9c1dacef6501",
      "parents": [
        "e17e68f13947db4c35ed38d96d792ef18a1946c6",
        "58cbd7a9c79d76c63a7fb03d65cfe56473d23e58"
      ],
      "author": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Mon Nov 14 16:23:42 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 14 16:23:43 2016 +0000"
      },
      "message": "Merge \"Add CAPABILITY_SUPPORTS_VIDEO_CALLING to PhoneAccount.\""
    },
    {
      "commit": "c66ec40d38e8d51a7351d37e9c08260aae0737a7",
      "tree": "53b3bfae1df46fb25b4a4e0b28aa10a65c5ba138",
      "parents": [
        "0bebfe76fc216ce2b1b7405eec93c9fe21f5a059"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Nov 14 16:06:42 2016 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Nov 14 16:06:42 2016 +0000"
      },
      "message": "Correctly handle when the user has no explicit time_12_24 setting\n\nThe code would previously interpret \"null\" (meaning the user\nhasn\u0027t touched the setting in the Settings app) as meaning\n\"use 12 hour format\". The actual meaning of \"null\" is\ngenerally accepted in the platform as\n\"use the locale default\". For example, the Settings app does\nthis, as does the code in libcore.icu.LocaleData. For\nlocales where the default is \"use 12 hour format\" anyway\nthis wasn\u0027t obvious. However, locales like Germany should\ndefault to  24 hour, and then the setting is displayed\nincorrectly in the Settings app.\n\nAlso, German devices boot for the first time with 12 hour SHORT\nand MEDIUM time formats too. After the user had explicitly set\nthe format the setting would be correct.\n\nThere appear to be no tests for this behavior, presumably\nbecause of the difficulty in forcing the setting to \"unset\"\nwhich would have to have to happen before the app was launched,\nand the fact that CTS tests run in the US locale.\n\nBug: 32868036\nTest: Manual testing with a device set to German\nChange-Id: Ifd2e8d345f6afee467d7525d6793fc8fda37c900\n"
    },
    {
      "commit": "e17e68f13947db4c35ed38d96d792ef18a1946c6",
      "tree": "a5e46192279a277cab93423a861d4a48b82af288",
      "parents": [
        "82c9ba9c55c20b6e26a49c15c5f08f0c66e27d9b",
        "ab2fca253b7dc04daf336b4b589bd096b66c4572"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Nov 14 15:03:31 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Nov 14 15:03:32 2016 +0000"
      },
      "message": "Merge \"hidl: Update for IFoo::descriptor -\u003e const char *.\""
    },
    {
      "commit": "3bb65781ec5aa73d25dc684f53f6b46752a12838",
      "tree": "2fd4a66e359c8118cd082a3805c9339c42199979",
      "parents": [
        "866658261f4613e17ed6f39a74975ad0c9f40767"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Nov 11 17:20:54 2016 -0800"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Nov 11 17:27:18 2016 -0800"
      },
      "message": "Update for removing read/writeEmbeddedFrom/ToParcel methods.\n\nTest: mma\n\nBug: 32756130\n\nChange-Id: I179a1fbd4962e9b3be383cc25d95a6d492ef6a1f\n"
    },
    {
      "commit": "82c9ba9c55c20b6e26a49c15c5f08f0c66e27d9b",
      "tree": "534346d5eb56df12030a5a5625256dd566698270",
      "parents": [
        "b828b6bf6cbd87d344157abe4a1cb7fcf6a0423c",
        "3d83b0e90bfa0d993c8624fc3032249025d6f269"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Fri Nov 11 23:33:14 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 11 23:33:15 2016 +0000"
      },
      "message": "Merge \"Bluetooth: advertising improvements\""
    },
    {
      "commit": "3d83b0e90bfa0d993c8624fc3032249025d6f269",
      "tree": "534346d5eb56df12030a5a5625256dd566698270",
      "parents": [
        "b828b6bf6cbd87d344157abe4a1cb7fcf6a0423c"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Fri Nov 04 15:25:57 2016 -0700"
      },
      "committer": {
        "name": "Andre Eisenbach",
        "email": "eisenbach@google.com",
        "time": "Fri Nov 11 23:28:32 2016 +0000"
      },
      "message": "Bluetooth: advertising improvements\n\nThis patch removes isPeripheralModeSupported(), hidden public method\nwhich is always returning true. It also modify the BluetoothLeAdvertiser\nto be able to use advertising instance with instance id equal 0.\n\nBug: 30622771\nBug: 24099160\nChange-Id: Id31582621dbe56d5c3a8d4ee5cd296af66a5f026\n"
    },
    {
      "commit": "b828b6bf6cbd87d344157abe4a1cb7fcf6a0423c",
      "tree": "df05bba4e69daefdc2b2d53ef3adf33dee56665e",
      "parents": [
        "2174731449022007dddfb226b23436211ecb82d4",
        "06af1c0ede225d269e0e2753cdb7a709120b9358"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 11 23:25:43 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 11 23:25:43 2016 +0000"
      },
      "message": "Merge \"Respect force_mount_namespace in MountEmulatedStorage().\""
    },
    {
      "commit": "2174731449022007dddfb226b23436211ecb82d4",
      "tree": "eea0dde0839ffe8c1444d1c6ebfd8ce2d0d36580",
      "parents": [
        "866658261f4613e17ed6f39a74975ad0c9f40767",
        "2977c3e372070a540330a6761fbadd201822fff1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 11 23:22:55 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 11 23:22:55 2016 +0000"
      },
      "message": "Merge \"Bluetooth: BLE app tracking fixes\""
    },
    {
      "commit": "2977c3e372070a540330a6761fbadd201822fff1",
      "tree": "eea0dde0839ffe8c1444d1c6ebfd8ce2d0d36580",
      "parents": [
        "866658261f4613e17ed6f39a74975ad0c9f40767"
      ],
      "author": {
        "name": "Marie Janssen",
        "email": "jamuraa@google.com",
        "time": "Wed Nov 09 12:01:24 2016 -0800"
      },
      "committer": {
        "name": "Marie Janssen",
        "email": "jamuraa@google.com",
        "time": "Fri Nov 11 21:30:33 2016 +0000"
      },
      "message": "Bluetooth: BLE app tracking fixes\n\nSimplify tracking registered BLE Apps and clear the state when we\ntry to recover bluetooth from starting to ON.\n\nTest: enable and disable bluetooth an LE-only app running\nBug: 32609235\nChange-Id: I3233bf8402a3c8fc4886ef21b1e9411bc78d4e2c\n"
    },
    {
      "commit": "ab2fca253b7dc04daf336b4b589bd096b66c4572",
      "tree": "991aa9de70a3c0aabc06b95b2a68f6c1105e6a73",
      "parents": [
        "44e817fdcf566f3dd17034a8197c87c4765694fc"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Nov 11 12:33:41 2016 -0800"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Nov 11 12:33:41 2016 -0800"
      },
      "message": "hidl: Update for IFoo::descriptor -\u003e const char *.\n\nTest: hidl_test, hidl_test_java\nBug: 32745840\nChange-Id: I9e4dcaaf7365d03cb53a2e1e8cd6336fbc08417d\n"
    },
    {
      "commit": "866658261f4613e17ed6f39a74975ad0c9f40767",
      "tree": "0bdc3dc74401c4b42ca30de4fd0fcc9bce3eee13",
      "parents": [
        "4469e48d5cfddf7712aba3ac93fd08f4e0b97f38",
        "01d023e966f88052c634c8c70bfff2d1f7c1c18c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 11 19:54:38 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 11 19:54:39 2016 +0000"
      },
      "message": "Merge \"Make AmrInputStream use MediaCodec\""
    },
    {
      "commit": "58cbd7a9c79d76c63a7fb03d65cfe56473d23e58",
      "tree": "d6b4c90f7c0e68d37f736960152eead6aae301b0",
      "parents": [
        "bccf93311cdf5e8cfcd00bdfbf4ccab44ba7b6ab"
      ],
      "author": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Fri Nov 11 11:31:28 2016 -0800"
      },
      "committer": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Fri Nov 11 19:43:57 2016 +0000"
      },
      "message": "Add CAPABILITY_SUPPORTS_VIDEO_CALLING to PhoneAccount.\n\nAdding companion PhoneAccount capability which is used to indicate when a\nPhoneAccount supports video calling.  That is, whether it can potentially\nmake video calls, but not necessarily at the current time.\n\nThis is an often requested OEM enhancement which is used to drive UX (e.g.\nimagine a video calling icon showing up if the device supports video, but\nonly being enabled when the device is in range of a VT capable tower).\n\nSee bug for reference to design doc.\n\nMerged-Id: I38379a3a1cf1be04c6136b89b93ee95193ee7b6f\nBug: 27328615\nTest: Manual\nChange-Id: I08fc18950e6d35a8a7df47ce37aa2326624b9fd3\n"
    },
    {
      "commit": "4469e48d5cfddf7712aba3ac93fd08f4e0b97f38",
      "tree": "63a0e307dd66b1035b6aef14e2ae76d8dff7574b",
      "parents": [
        "264d1f12a304bab2c6f9e5053990a86c3060fdc2",
        "211c1c2ca815b101ed9bc65a9ab0407c3ce97836"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Fri Nov 11 19:41:46 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 11 19:41:46 2016 +0000"
      },
      "message": "Merge \"Expose getters for RSRP, RSRQ, RSSNR, and CQI in CellSignalStrengthLte. Regenerate api accordingly. BUG: 32609966 Test: CTS Testing new API\""
    }
  ],
  "next": "01d023e966f88052c634c8c70bfff2d1f7c1c18c"
}
