)]}'
{
  "log": [
    {
      "commit": "ff1f29e1b112e68d16908b1a89225315089f8e50",
      "tree": "3e06563f1beb349e5a1fffca68197dd3e42e59ad",
      "parents": [
        "97f09ae8b0fd88e9e14942a12b9b7ddc8355a1c8"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Apr 07 17:31:16 2015 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Wed Apr 08 15:21:06 2015 -0700"
      },
      "message": "TIF: add a video unavailable constant for audio program case.\n\nBug: 20019339\nChange-Id: Ife3452486c065e6c5809f0cd2bb87794c4279312\n"
    },
    {
      "commit": "a9e9578d73e2cd5bccb84ccbd76e68827e54a901",
      "tree": "790acd555576d42f99f747ad720c3881b70ec7ad",
      "parents": [
        "06fe59bfa2210f877e6ad8ca413da1926b9df4f5",
        "1df9429b6b76710f8dd6458517d04feb7a63826e"
      ],
      "author": {
        "name": "Nancy Chen",
        "email": "nancychen@google.com",
        "time": "Wed Apr 08 20:57:52 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 08 20:57:55 2015 +0000"
      },
      "message": "Merge \"Hide and make systemapi visual voicemail-related apis.\""
    },
    {
      "commit": "06fe59bfa2210f877e6ad8ca413da1926b9df4f5",
      "tree": "477371a7a7dde325411b1964d27c753dc05825b7",
      "parents": [
        "cd890311fb5d8240fb3df703befa202efe0ff60c",
        "0a551f1487e00a598b20b1bc58a1ccd7226e7091"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Wed Apr 08 20:42:39 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 08 20:42:44 2015 +0000"
      },
      "message": "Merge \"camera2: add reprocess format map\""
    },
    {
      "commit": "181767329b7c4d2c09189502b56433d59e0daff9",
      "tree": "671eb2a3598fdba5d2ccb8ee028b6c6573b2f5a2",
      "parents": [
        "6e08dbc366befde334fc9cf5728d4043d8b86a37",
        "fb4894429810776ae1d2d812872d3158e4d9eb92"
      ],
      "author": {
        "name": "Timothy Knight",
        "email": "tknight@google.com",
        "time": "Wed Apr 08 19:14:36 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 08 19:14:38 2015 +0000"
      },
      "message": "Merge \"Revert \"Camera2: Add camera pose and distortion fields\"\""
    },
    {
      "commit": "fb4894429810776ae1d2d812872d3158e4d9eb92",
      "tree": "bb0630f99714df7f074cb98b87ed816741dbdb6f",
      "parents": [
        "da1e6411be6d69650d7e8ae42e738f2dbb356777"
      ],
      "author": {
        "name": "Timothy Knight",
        "email": "tknight@google.com",
        "time": "Wed Apr 08 19:13:43 2015 +0000"
      },
      "committer": {
        "name": "Timothy Knight",
        "email": "tknight@google.com",
        "time": "Wed Apr 08 19:13:43 2015 +0000"
      },
      "message": "Revert \"Camera2: Add camera pose and distortion fields\"\n\nThis reverts commit da1e6411be6d69650d7e8ae42e738f2dbb356777.\n\nChange-Id: Id04cc86cf9740a2a9bf5eb047b633a2abd90f561\n"
    },
    {
      "commit": "6d5c0ba98c93ce3c9d43c7131ec787c6b762a71a",
      "tree": "34969aafe9478946e04b615ecd5cbd0a26fe842d",
      "parents": [
        "b0c98dac3d669e6a8222e4ffb50cd535ff7924c5",
        "2aebb3fec319f5715e70dc5d3c3139f8821ec6ab"
      ],
      "author": {
        "name": "Santos Cordon",
        "email": "santoscordon@google.com",
        "time": "Wed Apr 08 19:01:31 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 08 19:01:36 2015 +0000"
      },
      "message": "Merge \"Add SIM activation constants to TelephonyManager\""
    },
    {
      "commit": "b0c98dac3d669e6a8222e4ffb50cd535ff7924c5",
      "tree": "3050d7ecf6532089566d46a9f01198a921670fca",
      "parents": [
        "dfe5ec56f2d87233dc4b0a58f0c951c5ff7e2b15",
        "ce9d6f9c75e2254f3704996e232e57e0c8f686d8"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Apr 08 18:57:54 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 08 18:57:59 2015 +0000"
      },
      "message": "Merge \"ImageReader/Writer: implement opaque format operations\""
    },
    {
      "commit": "da1e6411be6d69650d7e8ae42e738f2dbb356777",
      "tree": "3b13364173a6598eb2cae447f8ce9b3a4d189b11",
      "parents": [
        "2a39aef4398b332eceddf09b34f64747caa48249"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Mon Feb 09 15:56:40 2015 -0800"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Apr 08 18:37:03 2015 +0000"
      },
      "message": "Camera2: Add camera pose and distortion fields\n\n- android.lens.info.poseRotation\n- android.lens.info.poseTranslation\n- android.lens.info.intrinsicCalibration\n- android.lens.info.radialDistortion\n\nChange-Id: I3f8cf258b600bc58d0743e44aa6c456cd4b8a906\n"
    },
    {
      "commit": "2aebb3fec319f5715e70dc5d3c3139f8821ec6ab",
      "tree": "c0b00722940e806d6f136907c13cf0955d1feb46",
      "parents": [
        "1ffaca4414c5c2b73e5aaf085728e3b01ea534c3"
      ],
      "author": {
        "name": "Santos Cordon",
        "email": "santoscordon@google.com",
        "time": "Mon Apr 06 10:50:17 2015 -0700"
      },
      "committer": {
        "name": "Santos Cordon",
        "email": "santoscordon@google.com",
        "time": "Wed Apr 08 11:04:01 2015 -0700"
      },
      "message": "Add SIM activation constants to TelephonyManager\n\nChange-Id: I43fe5de4a1137bede4e81f4d51f272ad92dc80d5\n"
    },
    {
      "commit": "ce9d6f9c75e2254f3704996e232e57e0c8f686d8",
      "tree": "01ccb7d2c423969e58011a73f581f6f5da0ebada",
      "parents": [
        "30b89849032eb57d1da93de40a6a9bd2a5f55a2e"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Sun Mar 29 16:33:59 2015 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Wed Apr 08 10:39:29 2015 -0700"
      },
      "message": "ImageReader/Writer: implement opaque format operations\n\nImplement attach/detach for image reader and writer.\n\nBug: 19872821\nChange-Id: Ib45a054c6be0b56b370fa8d709b47b0298ba5ea7\n"
    },
    {
      "commit": "9054431af3f7de58b2769b63d863bdfa85c3bd1c",
      "tree": "33c6ba8f98aefb6a5f8afdc8d8e813a609bc0780",
      "parents": [
        "2c696c4cc6c4cc6523d74e32eb78808531dfb41e",
        "465f0d6aa36f2f1db88603aa487bcba9f5af068d"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Wed Apr 08 04:42:33 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 08 04:42:36 2015 +0000"
      },
      "message": "Merge \"TIF: Redefine time shift status and change callback and position APIs\""
    },
    {
      "commit": "465f0d6aa36f2f1db88603aa487bcba9f5af068d",
      "tree": "57123888bab912fc838cba10118931f5a8125b15",
      "parents": [
        "e3a071c384f7ad2864cab48a88a5c6327e69ef76"
      ],
      "author": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Mon Apr 06 18:40:46 2015 -0700"
      },
      "committer": {
        "name": "Jae Seo",
        "email": "jaeseo@google.com",
        "time": "Tue Apr 07 17:34:39 2015 -0700"
      },
      "message": "TIF: Redefine time shift status and change callback and position APIs\n\nAlso added/modified the documentation and addressed feedback from the\nprevious CL.\n\nChange-Id: I046970cd0d2688886039d37a332bbe11bc5a4b0f\n"
    },
    {
      "commit": "0788595e0c9bc5e8c1907c63db595010006ef5b4",
      "tree": "1f44f98341a3ed4c1e4f81bf597f67d25edbbc88",
      "parents": [
        "37c905e64655d5bfc5ba06fa0bbee10c1fdc6010"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Apr 06 19:41:28 2015 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Apr 07 17:13:32 2015 -0700"
      },
      "message": "Add IntentFilter auto verification - part 3\n\n- add private API PackageManager.getAllIntentFilters(String)\nfor getting all IntentFilters from a given package\n- update IntentFilterVerificationInfo to use an ArrayList\u003cString\u003e\nfor domains instead of a String[]\n- if you make an App a default domain handler then make the\nothers as non default\n- create an IntentVerificationInfo even if the App IntentFilters\ndo not need to be verified. This would be done only if the App\nhas some domain URLs defined and would allow to make it the\ndefault handler for a domain\n- a few code optimizations here and there\n\nChange-Id: I4535372a0bb1a2c8e662e1485be8ca700003e9b3\n"
    },
    {
      "commit": "0a551f1487e00a598b20b1bc58a1ccd7226e7091",
      "tree": "317448e6c06937fb2da96944895eddbe538d26ba",
      "parents": [
        "7f7e1d13c0f1b7f8996f3b241d5b096c852f891c"
      ],
      "author": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Fri Apr 03 17:57:35 2015 -0700"
      },
      "committer": {
        "name": "Chien-Yu Chen",
        "email": "cychen@google.com",
        "time": "Tue Apr 07 16:57:23 2015 -0700"
      },
      "message": "camera2: add reprocess format map\n\nAdd reprocess format map to StreamConfigurationMap and add support\nfor ImageFormat.PRIVATE.\n\nChange-Id: I5dd8ecbbb63231574a9ca4bf27c374b4a220e0ed\n"
    },
    {
      "commit": "21af1bc845c52a2d7b7bb6a53b53fa622281ccee",
      "tree": "97d59a7c8df9fc6fdbd0f0819c3bb33c17571315",
      "parents": [
        "922346c0b2b5649c8a3d5798183753ae38406695",
        "4ac9c8078b6886e780a5a29d57699fce3593b987"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Apr 07 19:55:54 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 07 19:55:59 2015 +0000"
      },
      "message": "Merge \"Fix build\""
    },
    {
      "commit": "922346c0b2b5649c8a3d5798183753ae38406695",
      "tree": "0d63289505037ddad2743945a987b245bd052c7b",
      "parents": [
        "b4140e4251d41dde7faac1f3de9baad73feacee5",
        "1709856238c61a2103a4827df1786f1d63fcd744"
      ],
      "author": {
        "name": "Yang Ni",
        "email": "yangni@google.com",
        "time": "Tue Apr 07 19:54:29 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 07 19:54:31 2015 +0000"
      },
      "message": "Merge \"Add a name to ScriptGroup2.Builder.create method\""
    },
    {
      "commit": "4ac9c8078b6886e780a5a29d57699fce3593b987",
      "tree": "d62220ab502404a30cc88c32cfa0fdff896d9bee",
      "parents": [
        "a86790bf23a98ede5fc0c29b996a5229e08181cd"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Apr 07 12:53:37 2015 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Apr 07 12:53:37 2015 -0700"
      },
      "message": "Fix build\n\nChange-Id: I1c748fd9fea6f5d4baf2c9cb29d1f3dc9f3a7082\n"
    },
    {
      "commit": "1df9429b6b76710f8dd6458517d04feb7a63826e",
      "tree": "0b12a3dd39c3a1b8e1e21f4b49ae1d20338abc7c",
      "parents": [
        "b677e0a49643d265eb0fa5efc3666a1e9362477f"
      ],
      "author": {
        "name": "Nancy Chen",
        "email": "nancychen@google.com",
        "time": "Tue Apr 07 12:21:36 2015 -0700"
      },
      "committer": {
        "name": "Nancy Chen",
        "email": "nancychen@google.com",
        "time": "Tue Apr 07 12:21:36 2015 -0700"
      },
      "message": "Hide and make systemapi visual voicemail-related apis.\n\nSince there are no third-party apps expected to be using the visual\nvoicemail related apps at the moment, best to keep these hidden for now.\n\nBug: 19236241\nChange-Id: I86f622208efcc89fab523f03d2bb70c244cdf867\n"
    },
    {
      "commit": "25ff0646ca16060040ff68ad6d02422db96327e0",
      "tree": "8174fd39edca16b0fbe03cbe0301314901f7f2e5",
      "parents": [
        "1620a65d32251ca058b60cb2751394e9ee1f0019",
        "a86790bf23a98ede5fc0c29b996a5229e08181cd"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Apr 07 18:50:49 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 07 18:50:54 2015 +0000"
      },
      "message": "Merge \"Add Camera prewarm intent.\""
    },
    {
      "commit": "a86790bf23a98ede5fc0c29b996a5229e08181cd",
      "tree": "356a816c89f4dd08c1437221eb57aa168fe0a015",
      "parents": [
        "6e9fa1a4b74dc4e35470739cfd64881cb9bcc7b1"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Apr 02 16:32:29 2015 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Apr 07 11:24:05 2015 -0700"
      },
      "message": "Add Camera prewarm intent.\n\nAlso adds a test app for testing this intent. In addition, the secure\ncamera gets launched in the background to fix jank while sending the\nintent.\n\nBug: 20016619\nChange-Id: I7bb7e22ddaf5dc67fc09b9e63e5f3d10fe8e3ee4\n"
    },
    {
      "commit": "61cbc1f74fd3e08cfb813468e12b5e44aa1679f5",
      "tree": "db9b9f21dfd342df34770d6ed503721ca60069ce",
      "parents": [
        "7f7e1d13c0f1b7f8996f3b241d5b096c852f891c",
        "23f4432437b2ab742971055b7eb79b346894f24b"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue Apr 07 17:21:05 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 07 17:21:08 2015 +0000"
      },
      "message": "Merge \"Add accessibility action for scrolling to a collection position\""
    },
    {
      "commit": "1709856238c61a2103a4827df1786f1d63fcd744",
      "tree": "b2e8db1417773e015838bab344371e587af2d8c6",
      "parents": [
        "33f8d0976fc91d0bc64ccd41c86566e0ec0fbb89"
      ],
      "author": {
        "name": "Yang Ni",
        "email": "yangni@google.com",
        "time": "Mon Apr 06 16:58:57 2015 -0700"
      },
      "committer": {
        "name": "Yang Ni",
        "email": "yangni@google.com",
        "time": "Tue Apr 07 09:37:50 2015 -0700"
      },
      "message": "Add a name to ScriptGroup2.Builder.create method\n\nThe name is not used in any meaningful way yet, but would be used\nto name the file for generated code for fused kernels in other\ncoming CLs.\n\nA script group name cannot be null or empty, or longer than 100\ncharacters. It can only contain letters, digits, \u0027-\u0027, or \u0027_\u0027.\n\nChange-Id: I95fdbf58e6689da91ca98c2057dfa1a803d3b27b\n"
    },
    {
      "commit": "9b8178719b4ff9058ddcc1c66e9416439b2348f0",
      "tree": "2c5ea70e76804ba20a2c45bc64156ff0a69eb494",
      "parents": [
        "565b0f81ebf6a5a7b2ca859628fa0151b7f14dfb",
        "0a26157a9f71fa4b26b88fc523b5809c64f6e7c9"
      ],
      "author": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Tue Apr 07 12:52:28 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 07 12:52:31 2015 +0000"
      },
      "message": "Merge \"Create the Process Text Intent Action and Extra\""
    },
    {
      "commit": "0a26157a9f71fa4b26b88fc523b5809c64f6e7c9",
      "tree": "cff9a73b6fbd4d46a7a0eccdf6b70c84b9e078b1",
      "parents": [
        "066be66d6060c3dd23a84690a396d1df12c6404d"
      ],
      "author": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Thu Mar 26 18:38:55 2015 +0000"
      },
      "committer": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Tue Apr 07 13:49:54 2015 +0100"
      },
      "message": "Create the Process Text Intent Action and Extra\n\nChange-Id: I33e30324970e91b04fcc233b91c9d43580c446fc\n"
    },
    {
      "commit": "1b650cb6f99e0481ed20795ec19fc62bbf1191ba",
      "tree": "fef20cdee89f5c5a27294a4a01971b9676c9abd0",
      "parents": [
        "227d23d4d6580aedfe1bcbb24f34aa5907cc2d88"
      ],
      "author": {
        "name": "Selim Gurun",
        "email": "sgurun@google.com",
        "time": "Mon Apr 06 20:13:37 2015 -0700"
      },
      "committer": {
        "name": "Selim Gurun",
        "email": "sgurun@google.com",
        "time": "Mon Apr 06 20:13:37 2015 -0700"
      },
      "message": "Add the Assist support to Webview\n\nBug: 19771298\n\nImplement the Webview API to provide assist data. Webview assist\ndata is provided asynchronously.\n\nChange-Id: I2fbf3e5ce7779ba6664dfbc6a702880fe71d5126\n"
    },
    {
      "commit": "7cf828ca64728e41fca0f84f297aa48a21830fd6",
      "tree": "e89a1f5b43fb7bb41412cfdaf29976bc726ba697",
      "parents": [
        "0f2974321b8109d7d4e888a8a9662b5f9813c114",
        "633bf5ca52536e1a009b21603e684b7e393df385"
      ],
      "author": {
        "name": "Johnson Hsieh",
        "email": "johnson@google.com",
        "time": "Tue Apr 07 00:37:28 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 07 00:37:29 2015 +0000"
      },
      "message": "Merge \"Add VOICE_CANCEL_ALARM/VOICE_DELETE_ALARM intents.\""
    },
    {
      "commit": "bc80a260cf9e1278f29bae22738ac6c03caa4ded",
      "tree": "6a296e0e9cd62054f59908f6ea038134e09db8ff",
      "parents": [
        "cff70cd8600fdf0e044e67f8638a7224f6a70efa",
        "8e27c4ddaeb4414bd0e658553672fa9cc57a41d3"
      ],
      "author": {
        "name": "Craig Lafayette",
        "email": "craiglafa@google.com",
        "time": "Mon Apr 06 23:47:27 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 06 23:47:34 2015 +0000"
      },
      "message": "Merge \"Add factory reset protection extras to DPM.\""
    },
    {
      "commit": "633bf5ca52536e1a009b21603e684b7e393df385",
      "tree": "bad0cbe5e03a66701178cb0920eb4d6bfb398751",
      "parents": [
        "6c6d266c401a587f3d6495f7eddd547bdc5759fb"
      ],
      "author": {
        "name": "Johnson Hsieh",
        "email": "johnson@google.com",
        "time": "Wed Apr 01 01:33:31 2015 -0700"
      },
      "committer": {
        "name": "Johnson Hsieh",
        "email": "johnson@google.com",
        "time": "Mon Apr 06 16:29:39 2015 -0700"
      },
      "message": "Add VOICE_CANCEL_ALARM/VOICE_DELETE_ALARM intents.\n\nThis will be used by the Voice Interaction API. For details, see\nhttps://docs.google.com/document/d/1_yRTbn-BxFi8Lc6bVmJ4r2dg3-05qUxf9yChiZXiiew/edit#.\n\nChange-Id: Icf4371ff351298ef7c1158e5e2d35561fc6cef67\n"
    },
    {
      "commit": "23f4432437b2ab742971055b7eb79b346894f24b",
      "tree": "072bd699e0176f29853d716cc6337fac72628ee7",
      "parents": [
        "1ffaca4414c5c2b73e5aaf085728e3b01ea534c3"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon Apr 06 16:04:56 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon Apr 06 16:04:56 2015 -0700"
      },
      "message": "Add accessibility action for scrolling to a collection position\n\nCleans up verbose R package in GridView, accessibility action docs,\nand some lint warnings in AccessibilityNodeInfo. Makes the action IDs\nfor SHOW_ON_SCREEN and SCROLL_TO_POSITION public so that we can\nguarantee they won\u0027t change (and thus reference them in support lib).\n\nChange-Id: Ica53b7be7a68b84054b9bac1fc7958a21a42e089\n"
    },
    {
      "commit": "516460819541e483321ef9156e4093d19f123ecc",
      "tree": "e56340f67bb7ae5ce512618146bef9b5f5e5130f",
      "parents": [
        "b8a330ebe74f01e05681d24129dd1d595dc23207",
        "d59a5d59df920d743723521a2afed9de1da3373b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Apr 06 20:21:54 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 06 20:21:58 2015 +0000"
      },
      "message": "Merge \"Various fixes and improvements...\""
    },
    {
      "commit": "8bf7eecb9f41ffe45e6e2200d4730e13e27b88a7",
      "tree": "794f348076b544e96115c6faadc505f9db469f55",
      "parents": [
        "37ff6f6402f156768ed4edeacd85423bf1eecbf4",
        "9db9326ad47279709a0f7989addaf4b45221b6b9"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Mon Apr 06 15:53:35 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 06 15:53:36 2015 +0000"
      },
      "message": "Merge \"Add MidiManager and MidiDevice classes to public API.\""
    },
    {
      "commit": "d59a5d59df920d743723521a2afed9de1da3373b",
      "tree": "2fa60c308b330a8203d00f1e99811e54c6f486a9",
      "parents": [
        "cef55cde1cf1b9b15583d6b4c439dfea7bac7c26"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Apr 04 14:52:14 2015 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Apr 04 17:36:05 2015 -0700"
      },
      "message": "Various fixes and improvements...\n\nIssue #19912529: VI: VoiceInteractor callback ClassCastException\n\nFix to use correct argument.\n\nIssue #19912636: VI: Documentation for VoiceInteractionSession.onBackPressed\n\nAdded documentation.\n\nIssue #19912703: VI: VoiceInteractionSession NPE on Abort Request\n\nMaybe fix this -- don\u0027t crash if there is no active session.\n\nIssue #19953731: VI: Add value index to...\n...android.app.VoiceInteractor.PickOptionRequest.Option\n\nThere is now an optional index integer that can be associated with\nevery Option object.\n\nIssue #19912635: VI: Behavior of startActivity when in voice...\n...interaction is unexpected\n\nWe now forcibly finish the current voice interaction task whenever\nanother activity takes focus from it.\n\nIssue #20066569: Add API to request heap dumps\n\nNew ActivityManager API to set the pss limit to generate heap\ndumps.\n\nAlso added app ops for assist receiving structure and screenshot\ndata, so that we can track when it does these things.\n\nChange-Id: I688d4ff8f0bd0b8b9e3390a32375b4bb7875c1a1\n"
    },
    {
      "commit": "b3006d38c6fdb964d9101f38e596e01de3591e56",
      "tree": "b9e2467547e785cd6b6bfcd1a24605f2c5af972f",
      "parents": [
        "9e0f8deae851ec917613256dfbe899ae5c1b1ca5"
      ],
      "author": {
        "name": "Barnaby James",
        "email": "bjames@google.com",
        "time": "Thu Apr 02 17:49:54 2015 -0700"
      },
      "committer": {
        "name": "Barnaby James",
        "email": "bjames@google.com",
        "time": "Sat Apr 04 13:00:50 2015 -0700"
      },
      "message": "Intents for Voice controlled settings actions.\n\nAdd new voice interaction intents for battery saver mode, airplane mode and do not disturb.\n\nChange-Id: Id5bd4e4f23a798eef91d797ffcd17df482b30c08\n"
    },
    {
      "commit": "105295ed5562fe3fd0dec00cfc9b5dbd64440437",
      "tree": "500b4b4fc07d29f38647b0924235b3375aea180f",
      "parents": [
        "808ba3b5fe904aabe6067ec592a6030ea217cdc8",
        "35ba5ab4503f4818f0dd131ad1d2bf91f7397cad"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Apr 03 22:54:22 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 03 22:54:23 2015 +0000"
      },
      "message": "Merge \"AudioTrack builder API.\""
    },
    {
      "commit": "808ba3b5fe904aabe6067ec592a6030ea217cdc8",
      "tree": "edbaa9587791cbc70dd7d8e26055906eba6db7c4",
      "parents": [
        "cef55cde1cf1b9b15583d6b4c439dfea7bac7c26",
        "071a8b71d1212e218a3ebf7dbb8908a4acf5cf6d"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Apr 03 22:36:38 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 03 22:36:39 2015 +0000"
      },
      "message": "Merge \"MediaSync: add MediaSync JAVA API\""
    },
    {
      "commit": "071a8b71d1212e218a3ebf7dbb8908a4acf5cf6d",
      "tree": "c742c2423d1121ade185477f2eb359402b28dcfa",
      "parents": [
        "da656fd8c37982554edf9ad78113d3340443676d"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Mar 09 16:38:25 2015 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Apr 03 15:34:34 2015 -0700"
      },
      "message": "MediaSync: add MediaSync JAVA API\n\nBug: 19666434\nChange-Id: Iab6941f6d81cb95a3b86be14b239287acb0d0eee\n"
    },
    {
      "commit": "35ba5ab4503f4818f0dd131ad1d2bf91f7397cad",
      "tree": "374346471ada22e07e4f56ffafbb67e52da84de3",
      "parents": [
        "77840f4e8fd1af7d0fadce9a42ab5c6c99842d41"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Apr 01 09:40:11 2015 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Apr 03 15:32:21 2015 -0700"
      },
      "message": "AudioTrack builder API.\n\nAdd a Builder class for AudioTrack.\n\nBug 19699343\n\nChange-Id: I65cbcb32242c3d1857e5fca1a2f1dbe58c3b25ed\n"
    },
    {
      "commit": "9db9326ad47279709a0f7989addaf4b45221b6b9",
      "tree": "f69210f4800f0de532f6740c0803d09dab9b8f07",
      "parents": [
        "066be66d6060c3dd23a84690a396d1df12c6404d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Fri Apr 03 15:19:13 2015 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Fri Apr 03 15:19:13 2015 -0700"
      },
      "message": "Add MidiManager and MidiDevice classes to public API.\n\nSomehow we missed these two when we made the rest of the MIDI Manager public\n\nChange-Id: I08e94762e155aa6a7f98bd05b363aee5e4744061\n"
    },
    {
      "commit": "51ce5c16d559251a1a29affb971acce22ee5477e",
      "tree": "556c201374e6a934feb99b72e319303cdc095bb0",
      "parents": [
        "456432ead7e262f72565d02ac46fd5e498844b92",
        "e12189dee6504cf793d37f5689a7bbf0773293c7"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Apr 03 18:55:03 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 03 18:55:05 2015 +0000"
      },
      "message": "Merge \"audio: add AudioFormat.ENCODING_DTS\""
    },
    {
      "commit": "64e71cd6cce5c65548a570204f6cc8641ef1eddb",
      "tree": "f789d1dfeb4d5154a58f696917925602b77ed4f7",
      "parents": [
        "edea751f6416869ff08268d9aeec2f6b6e65f7f0",
        "6e9fa1a4b74dc4e35470739cfd64881cb9bcc7b1"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Apr 03 18:26:28 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 03 18:26:41 2015 +0000"
      },
      "message": "Merge changes from topic \u0027assist\u0027\n\n* changes:\n  Add test assist to implement motion study\n  Implement new assist gesture and motion\n  Add flag to voice interactor for supporting assist gesture\n  Add more internal API\u0027s for assist\n  Add ability to start voice interaction session directly\n"
    },
    {
      "commit": "0b68ff45125e449dd0b4120f530240093aa6253e",
      "tree": "3ac50e8ba4b6604dfee03f19af5ef0afa97590cb",
      "parents": [
        "225d3b5449d29b43e619d8538d024305f6e81ba9"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Apr 02 11:21:39 2015 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Apr 03 11:12:13 2015 -0700"
      },
      "message": "Add flag to voice interactor for supporting assist gesture\n\nAdd an additional flag to the voice-interaction-service declaration\nso it can indicate whether it is able to handle the assist gesture.\nUse that information in SystemUI so it only starts the voice\ninteraction session if the service is able to support it.\n\nChange-Id: I62b035ce4f4cf06ee6e7eb0ddc4bf5edbc0e6737\n"
    },
    {
      "commit": "25e12abc5b8a4aa83cfa150094fd145b777e6e03",
      "tree": "208268c6666cf72d9a201fe852f350b152cd8e70",
      "parents": [
        "0feaaafd7a9206e6bf1d9dc9a1f285937b9def8e"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Apr 02 11:46:28 2015 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Apr 03 11:11:51 2015 -0700"
      },
      "message": "Add ability to start voice interaction session directly\n\nAdd internal API\u0027s for SystemUI to start a voice interaction session\ndirectly, without using an intent.\n\nMake the assist gesture use that ability, if available.\n\nChange-Id: I88ce3c7514714eb45666884847193585a07417a9\n"
    },
    {
      "commit": "12611bdf6d96986aed386e7d1f834361a0ff7383",
      "tree": "74e358ec021a64e4573707d0a325bff24bf478db",
      "parents": [
        "25da6b65b0e3be610e1223758b1910f4e7ad1ed2",
        "5688b03f7f4fafd671451ff73103be0f2388b32e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Apr 03 16:46:53 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 03 16:46:54 2015 +0000"
      },
      "message": "Merge \"Add quick and dirty async AssistStructure building.\""
    },
    {
      "commit": "3370e446b136e0cafe42bdfcc0f2400b16e1eb4e",
      "tree": "8dafad06465dfd5b2663379c118a332de79988aa",
      "parents": [
        "b1e8e5e505c46f988706ba4b83159ba51bcbd77f",
        "eaafdf72a410b445cee9fea274a57f31aec2509f"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Fri Apr 03 14:30:17 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 03 14:30:18 2015 +0000"
      },
      "message": "Merge \"Store the device initializer componentname in addition to package.\""
    },
    {
      "commit": "eaafdf72a410b445cee9fea274a57f31aec2509f",
      "tree": "0efe16899b83093d85c829089395dab06fe0cf8a",
      "parents": [
        "84bf582208142616547a1b0f6b6a01fa3439b098"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Thu Apr 02 08:49:47 2015 -0400"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Fri Apr 03 08:27:34 2015 -0400"
      },
      "message": "Store the device initializer componentname in addition to package.\n\nThis removes ambiguity about which component in the initializer\npackage handles device initialization when setting up secondary users.\nBug: 19992262\n\nChange-Id: I2e48168907725a56cd05d0b51c9f28b34fa28d1a\n"
    },
    {
      "commit": "ad80b437f9d41815a5e865d47a26e8c4c56d5251",
      "tree": "c6c228cefd3b8603e83a665e1813b0242e6740f2",
      "parents": [
        "f8515ea431e4171bce058944f05edd03497ad07b",
        "4f1163c83e79da52b2be7ff6b10163441895bc26"
      ],
      "author": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Fri Apr 03 03:03:45 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 03 03:03:46 2015 +0000"
      },
      "message": "Merge \"Zen: Add a new level: alarms-only.\""
    },
    {
      "commit": "4f1163c83e79da52b2be7ff6b10163441895bc26",
      "tree": "240a0f0e5723e3187ac9cfa7b960f83de247517e",
      "parents": [
        "24d3dad8dd91af037e2f7cc2780efc1be643bbe3"
      ],
      "author": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Thu Apr 02 17:41:21 2015 -0400"
      },
      "committer": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Thu Apr 02 23:00:40 2015 -0400"
      },
      "message": "Zen: Add a new level: alarms-only.\n\nLike no-interruptions, but allows alarms.\n\nBug: 19260237\nChange-Id: I36bf0a333362256c8e54cd83992cb46c3bcb7f69\n"
    },
    {
      "commit": "5688b03f7f4fafd671451ff73103be0f2388b32e",
      "tree": "03f3362f7919592e14f2bd56957fc4c722397e26",
      "parents": [
        "3425dae8dc63372e8944dce43f7ed2d567512248"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 02 18:25:35 2015 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 02 18:43:31 2015 -0700"
      },
      "message": "Add quick and dirty async AssistStructure building.\n\nNew APIs on ViewAssistStructure all the app to request to\nbuild a sub-tree asynchronously and indicate when it is done\nwith that.  The overall AssistStructure is now only flattened\nand transfered on-demand, when the app receiving it requests\nits data -- and at that point we can wait for any asynchronous\nbuilding to complete.\n\nNew AsyncStructure view is a very simple example of using this\nto asynchronously build a child view.\n\nChange-Id: I14f9199bee64915ad3dc80b2190916ec874308af\n"
    },
    {
      "commit": "f8515ea431e4171bce058944f05edd03497ad07b",
      "tree": "b1529fd6a1e1cc2f49c4f7d5300409cacca8d5c3",
      "parents": [
        "3425dae8dc63372e8944dce43f7ed2d567512248",
        "6f0240cf63fe62b0af2c7d5112f9881d1e167bfc"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Fri Apr 03 01:37:41 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 03 01:37:43 2015 +0000"
      },
      "message": "Merge \"TIF: Add time shift APIs.\""
    },
    {
      "commit": "f673acb6c955a43e0fcf9d95eccc36b31083ff48",
      "tree": "9e4e0b7413bb257ea37fa6d8c1a8113d718c79fc",
      "parents": [
        "fd93eaf278ad2f58bb23d3141da1342f872c473c",
        "f7f969e67e9ab420404807b1b103dcd18d7aa7b7"
      ],
      "author": {
        "name": "Raph Levien",
        "email": "raph@google.com",
        "time": "Thu Apr 02 23:27:20 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 02 23:27:24 2015 +0000"
      },
      "message": "Merge \"Add Paint.hasGlyph method\""
    },
    {
      "commit": "f7f969e67e9ab420404807b1b103dcd18d7aa7b7",
      "tree": "535aec6e14f2ddfecf19311145c123581a7cebc0",
      "parents": [
        "78c926c9a3ee2a513bff08ca3e6276eafeebc531"
      ],
      "author": {
        "name": "Raph Levien",
        "email": "raph@google.com",
        "time": "Wed Apr 01 14:41:21 2015 -0700"
      },
      "committer": {
        "name": "Raph Levien",
        "email": "raph@google.com",
        "time": "Thu Apr 02 23:14:58 2015 +0000"
      },
      "message": "Add Paint.hasGlyph method\n\nThis patch adds a method to determine whether a typeface has a glyph\nto support a particular Unicode character or sequence.\n\nThe implementation is based on shaping the text and checking for the\npresence of .notdef glyphs, and counting the number of glyphs in the\nligature case. In the case of variation selector control characters, it\ncurrently just returns false because there is no variation selector\nsupport yet (Mongolian Free Variation Selectors work because they\u0027re\nshaped with GSUB instead).\n\nChange-Id: I8ee4ae0d6e81a0ac57f961eb02dcc35aabd87042\n"
    },
    {
      "commit": "6f0240cf63fe62b0af2c7d5112f9881d1e167bfc",
      "tree": "06c0e505a0261517f6e17fa2cdde4a595850c438",
      "parents": [
        "80eaa6aaaf676e7fa34ad5cd92ff161bb31b5c76"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Mar 31 17:56:36 2015 -0700"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Thu Apr 02 12:11:25 2015 -0700"
      },
      "message": "TIF: Add time shift APIs.\n\nChange-Id: I4faecd99d9e565c7228fc4b9da99e2adf1e67f19\n"
    },
    {
      "commit": "9e57a254953bedf24ba8b9eb6b6e24d10ff328f7",
      "tree": "5812c3bb48bdf3d414b3ddd8cd6c75cdc01257f4",
      "parents": [
        "24d3dad8dd91af037e2f7cc2780efc1be643bbe3",
        "6251f0d42be7da54d7f1bc8f570a44883b7d9052"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 02 18:18:40 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 02 18:18:42 2015 +0000"
      },
      "message": "Merge \"Rework assist to walk down the view hierarchy.\""
    },
    {
      "commit": "24d3dad8dd91af037e2f7cc2780efc1be643bbe3",
      "tree": "cfbdeeb1db071b4a1381cec7aaf0f3225a97a199",
      "parents": [
        "4a51c4c42c3e61beb9173f779fbcbc48f3511a6f"
      ],
      "author": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Thu Apr 02 12:24:02 2015 -0400"
      },
      "committer": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Thu Apr 02 14:14:27 2015 -0400"
      },
      "message": "Add new notification category for reminders.\n\nBug: 20045407\nChange-Id: I5c449551fb7ec5a3e2c350f443e1a18b84b4d03f\n"
    },
    {
      "commit": "0daa5713ee2df841ea22d88a1393ca11e0138621",
      "tree": "c7edb73e7c5ac99785550722ae889d5f8d6b7cf3",
      "parents": [
        "bcfe87f3e05ac65d7ecb7156cd0de580586df5e9",
        "e0f95f39c5a669a48ee3ebb8dc45bf2d7ee940f1"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Thu Apr 02 18:02:03 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 02 18:02:04 2015 +0000"
      },
      "message": "Merge \"Fix issues with theming of preloaded ColorStateLists\""
    },
    {
      "commit": "36711e0e2cee9181a328718a349454dbd834f4e2",
      "tree": "e431877ac7ecd981a4f0879cb8f8392ee2d5090d",
      "parents": [
        "ae896d318820ca5c4202c57608d4426fc9f3d798",
        "50d47618300016766852523111bfc7ec991f00ea"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Thu Apr 02 03:07:28 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 02 03:08:02 2015 +0000"
      },
      "message": "Merge changes from topic \u0027mwd-merge-040115\u0027\n\n* changes:\n  Merge (manually) pag/209446: Increase allowed duration to connect to HOGP profile\n  Merge commit \u0027d91f193\u0027 into merge2\n  Merge commit \u00275718646\u0027 into merge2\n  Merge commit \u00277aa0345\u0027 into merge2\n"
    },
    {
      "commit": "6251f0d42be7da54d7f1bc8f570a44883b7d9052",
      "tree": "d7e928e1d55745a3ff4771c546678e4b27fc6d1b",
      "parents": [
        "6cedefa2e4a10724982a72e22abc349c7578902d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Apr 01 16:45:03 2015 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Apr 01 17:08:27 2015 -0700"
      },
      "message": "Rework assist to walk down the view hierarchy.\n\nInstead of collecting all of the data directly in AssistStructure,\nwe now have a dispatch mechanism down the hierarchy to do so.\nWhile doing this, also added the ability to automatically collect\nassist data from AccessibilityNodeProviders attached to views\n(so now we see all of the data in for example Calendar).\n\nThis is a first step needed towards being able to asynchronously\npopulate assist data.\n\nChange-Id: I59ee1ea104ca8207bad8df7a38195d93da1adea7\n"
    },
    {
      "commit": "885b3ef519e5b0b67a896fb6693925b9b2fd22c6",
      "tree": "112aef239696d596c61014a83a7ee4d9a2b1e262",
      "parents": [
        "bb664e12e2539c4e8121764a891e000d52e9664f",
        "15a13781ad17bbc7e8ddbbad4d0c208f0fae615e"
      ],
      "author": {
        "name": "Santos Cordon",
        "email": "santoscordon@google.com",
        "time": "Wed Apr 01 22:38:25 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 01 22:38:26 2015 +0000"
      },
      "message": "Merge \"New generic intent for SIM Activation\""
    },
    {
      "commit": "15a13781ad17bbc7e8ddbbad4d0c208f0fae615e",
      "tree": "6b2796a25693e19fa1adb6d6e85f3e90875d0fb0",
      "parents": [
        "bf0adf3ba89078f1e8f74a394c1025ceebaa5b37"
      ],
      "author": {
        "name": "Santos Cordon",
        "email": "santoscordon@google.com",
        "time": "Tue Mar 31 18:32:31 2015 -0700"
      },
      "committer": {
        "name": "Santos Cordon",
        "email": "santoscordon@google.com",
        "time": "Wed Apr 01 15:35:55 2015 -0700"
      },
      "message": "New generic intent for SIM Activation\n\nNew hidden intents and permissions for a generic SIM-activation\nactivity.  New activity will handle generic SIM setup requests and then\ndelegate to the appropriate activation method (OTASP, HFA,\nCARRIER_SETUP).\n\nChange-Id: I1b22200544abefe486ec961b67a6e77b4d15aec3\n"
    },
    {
      "commit": "e0f95f39c5a669a48ee3ebb8dc45bf2d7ee940f1",
      "tree": "059872a6f9e095a1cb5b14605f1f247b8efd83fc",
      "parents": [
        "eb9a10c829646f4d49404124de5fdf0cc60f419e"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Apr 01 13:10:18 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Apr 01 13:10:18 2015 -0700"
      },
      "message": "Fix issues with theming of preloaded ColorStateLists\n\nEnsures changing configurations mask is propagated to the host drawable\nso that it can be properly cleared from cache on configuration changes.\nAlso fixes constant state handling of the mask in the Inset and Rotate\ndrawables.\n\nHides new ColorStateList methods related to theming, since they should\nonly be used during preloading or internally by framework drawables.\n\nFixes bug where the cached versions of themeable ColorStateLists were\nmodified by calling applyTheme() on the host drawable.\n\nAlso cleans up some docs and naming in GradientDrawable.\n\nBug: 19966397\nChange-Id: I8c8d3cabbaf94b488c2b8fe9fd423e07d824c19c\n"
    },
    {
      "commit": "39b4db73c3340ff955f67e4e5318159d19d1ab3a",
      "tree": "87132866cf1892b1669981789cc5b2b57aa7ece9",
      "parents": [
        "066be66d6060c3dd23a84690a396d1df12c6404d"
      ],
      "author": {
        "name": "Raph Levien",
        "email": "raph@google.com",
        "time": "Wed Mar 25 13:18:20 2015 -0700"
      },
      "committer": {
        "name": "Raph Levien",
        "email": "raph@google.com",
        "time": "Wed Apr 01 11:01:41 2015 -0700"
      },
      "message": "Add breakStrategy attribute to TextView\n\nThis patch adds plumbing to TextView to control the strategy used\nfor breaking paragraphs into lines.\n\nThe default for TextView is \"quality\", while the default for EditText\nis \"simple\", largely to avoid too much re-layout when editing.\n\nStaticLayout now has a builder which provides access to more\nfunctionality and is also cleaner than the old mechanism of having\nlots of constructors with varying numbers of arguments. This patch\nchanges TextView to use that builder, and also contains cleanups\nof the Builder within StaticLayout.\n\nChange-Id: Iee3cf3a05a3e51ba0834554e4a3ec606e9cabca5\n"
    },
    {
      "commit": "eb864d4000dacad94d5135a10ed7bdeb29f31881",
      "tree": "87ef0388347478c9247f954422a39e623942cc0e",
      "parents": [
        "227542a3d18e7c9637a7bf159df110a8746d2981",
        "d91f19354d628e48577128f670afb0f5587e15e8"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Wed Apr 01 09:31:43 2015 -0700"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Wed Apr 01 09:31:43 2015 -0700"
      },
      "message": "Merge commit \u0027d91f193\u0027 into merge2\n"
    },
    {
      "commit": "654875fad01c4ba2cc5f6ef9cc3b0135a4dce25c",
      "tree": "18c931b85726b5be44dc3aa38eddac3447682344",
      "parents": [
        "095d99904579a5231d974a2447661c10a8eb621b",
        "262f9952e6e78e00a6d42bab97d73dccfb9607f4"
      ],
      "author": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Tue Mar 31 22:52:17 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 31 22:52:18 2015 +0000"
      },
      "message": "Merge \"Support for nested bundles in setApplicationRestrictions\""
    },
    {
      "commit": "4470d68a89725cf9c40b2149e9d895915946d5ff",
      "tree": "ca30dee2f4a0628eae4e86caf6dfc71b234d1dd5",
      "parents": [
        "eb9a10c829646f4d49404124de5fdf0cc60f419e"
      ],
      "author": {
        "name": "Yang Ni",
        "email": "yangni@google.com",
        "time": "Mon Mar 16 16:23:50 2015 -0700"
      },
      "committer": {
        "name": "Yang Ni",
        "email": "yangni@google.com",
        "time": "Tue Mar 31 15:00:13 2015 -0700"
      },
      "message": "Unhide new ScriptGroup API\n\nThis includes the new class ScriptGroup2 and a related change in\nclass Script to add InvokeID.\n\nChange-Id: I012dc0a32c65803453022fa534ef05f855ea5ace\n"
    },
    {
      "commit": "e12189dee6504cf793d37f5689a7bbf0773293c7",
      "tree": "6ea6df6cb5d10729eb8bc5c56dff57afd982ffea",
      "parents": [
        "27e3514e55df90ee183d939ef10b18a4bf773bce"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Mar 31 14:38:30 2015 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Tue Mar 31 14:38:30 2015 -0700"
      },
      "message": "audio: add AudioFormat.ENCODING_DTS\n\nBug: 18292317\nChange-Id: I457a6996947d6d24ef7f8f152ee586029036acf5\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "eb9a10c829646f4d49404124de5fdf0cc60f419e",
      "tree": "2498e82a633344fb19e59551e4ef93abb5a23343",
      "parents": [
        "e478f460feb1ad6edcd170bed3e4e7a63abb143c",
        "d7ecab1e875da3efc618e4458d2a1a20a956f9a3"
      ],
      "author": {
        "name": "Miao Wang",
        "email": "miaowang@google.com",
        "time": "Tue Mar 31 19:41:01 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 31 19:41:02 2015 +0000"
      },
      "message": "Merge \"[RenderScript] Remove @hide for setAutoPadding(boolean).\""
    },
    {
      "commit": "3580cd0b5223837597cdc714180158495a866aa4",
      "tree": "3f08052049f5651ad179e130fb305918fbe02aee",
      "parents": [
        "37ec99b19ce7a5d40d16ccc2f578aca66bd7a25d",
        "6c7c4ada8b0ce5f7027fd7b87dc8848b42fa5a0c"
      ],
      "author": {
        "name": "Simranjit Singh Kohli",
        "email": "simranjit@google.com",
        "time": "Tue Mar 31 18:32:48 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 31 18:32:51 2015 +0000"
      },
      "message": "Merge \"[Auth:Last Credentials Timing] : Introducing API\""
    },
    {
      "commit": "37ec99b19ce7a5d40d16ccc2f578aca66bd7a25d",
      "tree": "c41d363a020319059c9437615c5cac0f1c0a3589",
      "parents": [
        "7744a25673a46eadf71a27e8283d7529a88fcca6",
        "11d444f0b789ead8b10506d24956d243274c724b"
      ],
      "author": {
        "name": "Yin-Chia Yeh",
        "email": "yinchiayeh@google.com",
        "time": "Tue Mar 31 18:27:21 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 31 18:27:23 2015 +0000"
      },
      "message": "Merge \"Add RAW12 image format\""
    },
    {
      "commit": "d032091fecf0fafac321f893a84df29bb3d32739",
      "tree": "c38ca9fc9e73235050cd2cd8c50fd5eaec82ae7a",
      "parents": [
        "4d42782e8cbc221dbfdd32a0d2ce74a81d97d7b3",
        "847d17fcba7e0fab3093d05b5405554df91c08e2"
      ],
      "author": {
        "name": "Mady Mellor",
        "email": "madym@google.com",
        "time": "Tue Mar 31 17:11:43 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 31 17:11:44 2015 +0000"
      },
      "message": "Merge \"Recognizes the stylus scale gesture in ScaleGestureDetector\""
    },
    {
      "commit": "8e27c4ddaeb4414bd0e658553672fa9cc57a41d3",
      "tree": "59b48038af097465085c9fcc05a207d938e1d407",
      "parents": [
        "80d4bd84ede57b1a3c1e8738fb6380c667c13865"
      ],
      "author": {
        "name": "Craig Lafayette",
        "email": "craiglafa@google.com",
        "time": "Thu Mar 19 08:36:38 2015 -0400"
      },
      "committer": {
        "name": "Craig Lafayette",
        "email": "craiglafa@google.com",
        "time": "Tue Mar 31 09:48:42 2015 -0400"
      },
      "message": "Add factory reset protection extras to DPM.\n\nThis extra will be sent to ManagedProvisioning via\nan NFC bump and allow factory reset protection challenges\nto be cleared.\n\nBug: 19792435\nChange-Id: I82b0e35ec7af4372341c202c06b643d6395cc65c\n"
    },
    {
      "commit": "6fd2d1d5c8acead83b8cf6ee1e9567e5692b23c5",
      "tree": "8f4c6f9facb33446c114cbeb34a42a49e3e7f9e4",
      "parents": [
        "0e9503de2009b2b97593f2f27646e1545b77114a",
        "c6563961e5cce5cfa781c5a956b4e51e3b440883"
      ],
      "author": {
        "name": "Jinsuk Kim",
        "email": "jinsukkim@google.com",
        "time": "Tue Mar 31 04:53:49 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 31 04:53:51 2015 +0000"
      },
      "message": "Merge \"CEC: API setSystemAudioMode\""
    },
    {
      "commit": "4887789e44cdb16b042a35e8ec03983213e88ac6",
      "tree": "b50f9d4adfdd1ee6fa7eca7c5a4db7cac8107e73",
      "parents": [
        "607f1f09c3da3a52557394d2e764326a29151173"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Mar 18 11:27:19 2015 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Mar 30 19:46:23 2015 -0700"
      },
      "message": "Progress towards dynamic storage support.\n\nStorage devices are no longer hard-coded, and instead bubble up from\nwhatever Disk and VolumeBase that vold uncovered, turning into\nsibling Java objects in MountService.  We now treat vold events as\nthe source-of-truth for state, and synchronize our state by asking\nvold to \"reset\" whenever we reconnect.\n\nWe\u0027ve now moved to a model where all storage devices are mounted in\nthe root mount namespace (user boundaries protected with GIDs), so\nwe no longer need app-to-vold path translation.  This also means that\nzygote only needs to bind mount the user-specific /mnt/user/n/ path\nonto /storage/self/ to make legacy paths like /sdcard work.  This\ngrealy simplifies a lot of system code.\n\nMany parts of the platform depend on a primary storage device always\nbeing present, so we hack together a stub StorageVolume when vold\ndoesn\u0027t have a volume ready yet.\n\nStorageVolume isn\u0027t really a volume anymore; it\u0027s the user-specific\nview onto a volume, so MountService now filters and builds them\nbased on the calling user.  StorageVolume is now immutable, making\nit easier to reason about.\n\nEnvironment now builds all of its paths dynamically based on active\nvolumes.  Adds utility methods to turn int types and flags into\nuser-readable strings for debugging purposes.\n\nRemove UMS sharing support for now, since no current devices support\nit; MTP is the recommended solution going forward because it offers\nbetter multi-user support.\n\nSimplify unmount logic, since vold will now gladly trigger EJECTING\nbroadcast and kill stubborn processes.\n\nBug: 19993667\nChange-Id: I9842280e61974c91bae15d764e386969aedcd338\n"
    },
    {
      "commit": "262f9952e6e78e00a6d42bab97d73dccfb9607f4",
      "tree": "6509c3b8d0a43086080794c4d1238a62aab18158",
      "parents": [
        "607f1f09c3da3a52557394d2e764326a29151173"
      ],
      "author": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Mon Mar 23 18:55:11 2015 -0700"
      },
      "committer": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Mon Mar 30 17:59:07 2015 -0700"
      },
      "message": "Support for nested bundles in setApplicationRestrictions\n\nAdded new restriction types - bundle and bundle-array.\n\nModified RestrictionsManager.getManifestRestrictions to support new\nhierarchical restrictions.\nAdded RestrictionsManager.convertRestrictionsToBundle, which enables\nprogrammatic conversion from a list of RestrictionEntries to a Bundle.\n\nModified read/write methods for application restrictions in UserManagerService.\nAdded unit tests.\n\nBug: 19540606\nChange-Id: I32b264e04d5d177ea5b4c39a8ace5ee0ce907970\n"
    },
    {
      "commit": "607f1f09c3da3a52557394d2e764326a29151173",
      "tree": "4bc7b4df6b0189908f340e865101b281b6ffebf3",
      "parents": [
        "27b2442e2244cef70fb64855652211beccc9f5df",
        "1c1b47125da018b44240739db75f8898e064a948"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Mar 31 00:16:57 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 31 00:16:59 2015 +0000"
      },
      "message": "Merge \"Add IntentFilter auto verification\""
    },
    {
      "commit": "75e4f353835d62c8625fb145e3aba1d442f93a90",
      "tree": "e2334eaf460ccb84294b1f0fe3f188b50137330a",
      "parents": [
        "8091ac4cfe06ea6d1ef259f17c79ec19f4d3a65b",
        "fc90c05649a7a19e330c386cba35a4d2c35f8349"
      ],
      "author": {
        "name": "Selim Gurun",
        "email": "sgurun@google.com",
        "time": "Mon Mar 30 23:57:09 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 30 23:57:10 2015 +0000"
      },
      "message": "Merge \"Remove unnecessary code\""
    },
    {
      "commit": "8091ac4cfe06ea6d1ef259f17c79ec19f4d3a65b",
      "tree": "81f99b253a74c14c2e8817021a182a41dde95197",
      "parents": [
        "673cec6ab58148a88e36b1b156e848a35db07228",
        "2f17431194efc5a13981550b004dd8d5d2a42e5e"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Mar 30 23:46:11 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 30 23:46:12 2015 +0000"
      },
      "message": "Merge \"ImageFormat: add PRIVATE format\""
    },
    {
      "commit": "fc90c05649a7a19e330c386cba35a4d2c35f8349",
      "tree": "c82d30f686f0109e111dcca450eb4507c1634a07",
      "parents": [
        "9d7b58571f9b8a00cddd204c556de4c1610b8996"
      ],
      "author": {
        "name": "Selim Gurun",
        "email": "sgurun@google.com",
        "time": "Mon Mar 30 16:18:04 2015 -0700"
      },
      "committer": {
        "name": "Selim Gurun",
        "email": "sgurun@google.com",
        "time": "Mon Mar 30 16:41:06 2015 -0700"
      },
      "message": "Remove unnecessary code\n\nBug: 19313118\n\nAs part of the \"better error reporting for Webview\" work, a new public\nAPI was defined for MNC release to report blocked loads. However,\nwe decided to use WebChromeClient.onConsoleMessage for this case.\nRemoving the API.\n\nChange-Id: I1a599385f1ecdd10ba5a774b0b2a6b9f4bdcbd95\n"
    },
    {
      "commit": "2f17431194efc5a13981550b004dd8d5d2a42e5e",
      "tree": "688fa9c58004aa592bb37349b3678bcb545180f6",
      "parents": [
        "8a78286915a8f71eb09b5ae29a3bd8fb977180e6"
      ],
      "author": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Fri Mar 20 11:39:55 2015 -0700"
      },
      "committer": {
        "name": "Zhijun He",
        "email": "zhijunhe@google.com",
        "time": "Mon Mar 30 16:17:35 2015 -0700"
      },
      "message": "ImageFormat: add PRIVATE format\n\nBug: 19865019\nChange-Id: I1a9335fe1733a5b28d9cb20485b509fb216cb52b\n"
    },
    {
      "commit": "89e0a1a033e6db0316f807cee49bb51f6f6fc4b5",
      "tree": "ef0e182f3829e27363e1d5b37687ed07013cac6c",
      "parents": [
        "d6b693b90b6cad114a58d097fd6283e8f6dd9f6f",
        "b67cd46436d3ee88ee42820fca9a8fe3cd2dc497"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Mon Mar 30 22:50:40 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 30 22:50:41 2015 +0000"
      },
      "message": "Merge \"Fix build.\""
    },
    {
      "commit": "b67cd46436d3ee88ee42820fca9a8fe3cd2dc497",
      "tree": "b28622e28c44ed2751ea5c80d6f704a218a2f1b7",
      "parents": [
        "988e3a570f2b7d709636055a1fe63b1e22702c5c"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Mon Mar 30 15:46:30 2015 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Mon Mar 30 15:46:30 2015 -0700"
      },
      "message": "Fix build.\n\nprivate class SearchIndexablesContract.BaseColumns is extended by public\nclasses. We need to make it public too.\n\nChange-Id: Id77575f7857020531b9d311ca5ba12c6462268a5\n"
    },
    {
      "commit": "d6b693b90b6cad114a58d097fd6283e8f6dd9f6f",
      "tree": "17c12000cae18326c87d4d1ba63526153989a83c",
      "parents": [
        "647d010b40daf369ad5fc70468679ee3ec1a1462",
        "6a420b5e0be235d35f319118eb4920f74a61dc5e"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "jsams@google.com",
        "time": "Mon Mar 30 22:36:36 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 30 22:36:36 2015 +0000"
      },
      "message": "Merge \"unhide RS apis\""
    },
    {
      "commit": "6a420b5e0be235d35f319118eb4920f74a61dc5e",
      "tree": "40ce8c50e651594cec8e16aafb1e8b6ff468382d",
      "parents": [
        "469d94490ed9cf3e08610250a3358bdd83d618a6"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "jsams@google.com",
        "time": "Mon Mar 30 15:31:26 2015 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "jsams@google.com",
        "time": "Mon Mar 30 15:31:26 2015 -0700"
      },
      "message": "unhide RS apis\n\nChange-Id: I30c3349c9222765ad7850890e0431bc6a6d3757a\n"
    },
    {
      "commit": "71036a89e64ec5f9ee2464161d94da96ef04ccd2",
      "tree": "8df8590b2d51a68591f2854c6256cf49082cbe17",
      "parents": [
        "8a78286915a8f71eb09b5ae29a3bd8fb977180e6",
        "27e13347344276f337d4289e3197f8ab7d5c74d2"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Mar 30 21:57:22 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 30 21:57:23 2015 +0000"
      },
      "message": "Merge \"Make Settings search API as a SystemAPI\""
    },
    {
      "commit": "6199bffef2eca134c44f0f56f8ddf9f0b8f41319",
      "tree": "5d0c7377f142662033792abd27548f74089269b8",
      "parents": [
        "27616de47b55bbf8db7c5d71a75ba70321327882",
        "646a0f8e0d0a9f94a5969d09a498f5de5fe40a88"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon Mar 30 19:37:38 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 30 19:37:43 2015 +0000"
      },
      "message": "Merge \"Deprecate AnalogClock widget, Integer methods on TimePickerView\""
    },
    {
      "commit": "27e13347344276f337d4289e3197f8ab7d5c74d2",
      "tree": "5ffa64d876e11742c3b27df10dbb3789eec1f2b4",
      "parents": [
        "523fe91af4baf26cd26e46c1418a072574959b73"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Mar 09 16:49:00 2015 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Mar 30 12:32:09 2015 -0700"
      },
      "message": "Make Settings search API as a SystemAPI\n\nSee: http://b/19443752\n\nChange-Id: I0148f187eec57a2734d8c04880a5950e9ec2b7b1\n"
    },
    {
      "commit": "60b674e07bf7346a673abd4a5f40bddeca16e7ff",
      "tree": "f6f700f5c0a7652b68886755335f64acb069cc4e",
      "parents": [
        "469d94490ed9cf3e08610250a3358bdd83d618a6"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Mar 25 13:00:42 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon Mar 30 12:15:25 2015 -0700"
      },
      "message": "Clean up date picker attributes, add carets\n\nBug: 19819283\nBug: 19431364\nChange-Id: Idd66f4ceb99d598c0f256d85c43bff6e25ccdd8f\n"
    },
    {
      "commit": "6c7c4ada8b0ce5f7027fd7b87dc8848b42fa5a0c",
      "tree": "514b144ef0dc4d5f2375696d3a2ac2ed232a0937",
      "parents": [
        "a9e1c4e54044c59f6001a6d9e6c01ffb07cfc47c"
      ],
      "author": {
        "name": "Simranjit Singh Kohli",
        "email": "simranjit@google.com",
        "time": "Mon Feb 23 18:11:14 2015 -0800"
      },
      "committer": {
        "name": "Simranjit Singh Kohli",
        "email": "simranjit@google.com",
        "time": "Mon Mar 30 11:08:18 2015 -0700"
      },
      "message": "[Auth:Last Credentials Timing] : Introducing API\n\nStoring last successful sign-in/authentication timings, and providing that\ninformation as extra\u0027s in updateCredentials and confirmCredentials.\nAlso, adding a new api: AccountManager#accountAuthenticated(Account).\n\nChange-Id: Icd0dac35b13d61bc28a2e045b96caefffeb353be\n"
    },
    {
      "commit": "1c1b47125da018b44240739db75f8898e064a948",
      "tree": "c2c4b241798ae9e5d61fd09955b8c0d2704bb133",
      "parents": [
        "523fe91af4baf26cd26e46c1418a072574959b73"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Nov 19 17:12:32 2014 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Mar 30 10:58:35 2015 -0700"
      },
      "message": "Add IntentFilter auto verification\n\nThe purpose of this feature is to prompt the Disambiguation dialog\nto Users as less as possible.\n\n- add the new \"autoVerify\" property to the IntentFilter class\n- add new APIs to PackageManager:\n verifyIntentFilter(int, int, List\u003cString\u003e),\n getIntentVerificationStatus(String, int),\n updateIntentVerificationStatus(String, int, int),\n getIntentFilterVerifications(String)\nfor supporting IntentFilter verification\n- add support for multi-user\n- update PackageManager for IntentFilter verification:\nbasically when we are installing a new package, ask for verification\nof all domains from the IntentFilters that have the \"autoVerify\" to true.\nThis means that the PackageManager will send a well defined protected\nbroadcast (with a new INTENT_FILTER_NEEDS_VERIFICATION action) to\nan IntentFilter verifier to do the real job of verification.\nWe are passing in the broadcast Intent all the necessary data for\ndoing the verification. The PackageManager will receive as response\nthe result code of the domain verifications and, if needed, the list\nof domains that have failed the verification.\n- add a new INTENT_FILTER_VERIFICATION_AGENT permission that needs to\nbe set by an intent filter verifier to be considered as a trustable\nparty by the PackageManager.\n- add also a new BIND_INTENT_FILTER_VERIFIER permission for securing\nthe binding between the PackageManager and a service doing the\nintent filter verifications.\n- add ResolveInfo filterNeedsVerification which is a boolean\nto knows if the IntentFilter is of a type that needs a verification\n(action VIEW, category BROWABLE, HTTP/HTTPS data URI)\n- add new \"domain-preferred-apps\" / \"d\" dump command for listing the\nprefered Apps for all domains\n- add new \"intent-filter-verifiers\" / \"ivf\" command for listing the\nIntentFilterVerifier used\n- introduce the IntentVerificationService which is a basic service\nfor verifying IntentFilters. This service will send HTTPS requests\nto the domain declared in the IntentFilter(s) for doing the\nverification. This service has a low priority level so that it\ncan be replaced by a more sophisticated one if needed. This service\nis updating the PackageManager intent verification states thru\nthe updateIntentVerificationStatus(...) API.\n- update MockPackageManager\n\nChange-Id: I0bfed193d0bf1f7c7ac79f6c1b160b7ab93b5fb5\n"
    },
    {
      "commit": "523fe91af4baf26cd26e46c1418a072574959b73",
      "tree": "32c6522a5c4b027309a9d1ae47a0147eb467c1a4",
      "parents": [
        "e9e02d52350102756e3e3e984dc0bba06638d93e",
        "f2525f6802219ad5e983128dc2f7b5a89a507d9c"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon Mar 30 17:27:01 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 30 17:27:03 2015 +0000"
      },
      "message": "Merge \"Clean up time picker attributes and drawing code\""
    },
    {
      "commit": "847d17fcba7e0fab3093d05b5405554df91c08e2",
      "tree": "aaad9977bb0a45c2c864a35ea7a681fcc9aeac85",
      "parents": [
        "9aaaa1ebb383b5aeabbdb2afb9956130e6564071"
      ],
      "author": {
        "name": "Mady Mellor",
        "email": "madym@google.com",
        "time": "Mon Mar 30 09:42:12 2015 -0700"
      },
      "committer": {
        "name": "Mady Mellor",
        "email": "madym@google.com",
        "time": "Mon Mar 30 09:42:12 2015 -0700"
      },
      "message": "Recognizes the stylus scale gesture in ScaleGestureDetector\n\nIf a user drags with a stylus (or mouse) across the screen with\nthe stylus primary (or mouse secondary) button clicked, this will\ninitiate a scale gesture that functions similarly to the quick\nscale gesture: drag below starting point zooms in, drag above\nstarting point zooms out.\n\nCombines some of the logic for quick scale and button\nscale due to similarities.\n\nBug: 19620246\nChange-Id: Ic53499d07cf6cef48b467dbb41f83cea433febad\n"
    },
    {
      "commit": "c6563961e5cce5cfa781c5a956b4e51e3b440883",
      "tree": "bd2e805cfdb7d33e2740af049a3310087f6df2a9",
      "parents": [
        "ebf750bc9b31206e95055ba65ad6c5226e7b8a0a"
      ],
      "author": {
        "name": "Jinsuk Kim",
        "email": "jinsukkim@google.com",
        "time": "Thu Mar 26 16:15:12 2015 +0900"
      },
      "committer": {
        "name": "Jinsuk Kim",
        "email": "jinsukkim@google.com",
        "time": "Mon Mar 30 09:43:05 2015 +0900"
      },
      "message": "CEC: API setSystemAudioMode\n\nThis CL adds a system API to set system audio mode. Previously\nnot available to have the settings app use aidl directly. Now\nadded since other related APIs like setSystemAudioVolume are\nalready in.\n\nChange-Id: I51f4f992f66f97a094cad5788548c259ac8bf10f\n"
    },
    {
      "commit": "549a8cb66dff1ba3088a8dd15200dd02527510e8",
      "tree": "385ee4e1e659483587912d5acaa59b903f2b9e55",
      "parents": [
        "822b403b687065e74efe2c5316638d4e2eda1863",
        "5781cd5b218dc3e5a19d8f69e6fb9f310bed4df6"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Sat Mar 28 16:00:19 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 28 16:00:21 2015 +0000"
      },
      "message": "Merge \"Make the MIDI Manager optional, enabled by \"android.software.midi\" feature\""
    },
    {
      "commit": "6e6af0d34eb08a810cd399de64c1ade21fe866a9",
      "tree": "f517d110c8640546af73b230a88e627374d11859",
      "parents": [
        "7760820ecc636b2a065b20eec8422d4deaf0141c",
        "11ae768cf1b8348e761ad9c09e98788da1e591b1"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Mar 27 23:50:57 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 27 23:50:58 2015 +0000"
      },
      "message": "Merge \"Add payload-size preflight stage to full transport backup\""
    },
    {
      "commit": "943eb8654ff64ad854adada782ab911421a649a0",
      "tree": "6094e9ec266cee4f2ffda375298afd048575e002",
      "parents": [
        "15427f80bb9632ec34f5491f0e9ac2c4f977074e"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Thu Mar 26 12:31:16 2015 -0700"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Fri Mar 27 21:26:46 2015 +0000"
      },
      "message": "Add emergency assistance API and setting\n\nBug: 19841649\nChange-Id: I5bc99df6d85eb84b253456e32ce52afd7592a95e\n"
    },
    {
      "commit": "d91f19354d628e48577128f670afb0f5587e15e8",
      "tree": "c30f599c46cc1e4b1fafee0838d591271bc9982d",
      "parents": [
        "fbeeccc354c6fadde035ecc3188a07c8ccb778f3"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "weiwa@google.com",
        "time": "Thu Mar 19 15:09:56 2015 -0700"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "weiwa@google.com",
        "time": "Fri Mar 27 14:05:37 2015 -0700"
      },
      "message": "Add API for BLE_SCAN_ALWAYS_AVAILABLE feature.\n\nChange-Id: I83e966d4db076db367ded71bfb50c39e57568156\n"
    },
    {
      "commit": "5781cd5b218dc3e5a19d8f69e6fb9f310bed4df6",
      "tree": "7c74f6c49adbe1da5d4b580bbdd69561116f76b9",
      "parents": [
        "1e650e26a7bb2f02635530a46ecd715f9911d40e"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Fri Mar 27 13:23:41 2015 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Fri Mar 27 13:23:41 2015 -0700"
      },
      "message": "Make the MIDI Manager optional, enabled by \"android.software.midi\" feature\n\nChange-Id: I76d442ea28beea4b9e2876bfef501d8f61403702\n"
    },
    {
      "commit": "545ebdefd25e4bbc0c7353df38f852f7ba982971",
      "tree": "a4304af884f5b187fd99b0fc152e38f4061ea96f",
      "parents": [
        "0f9d0fa125f64ccc115a0ce47e7b90eb642e22ae",
        "7cb000ff56babf18d39ab0aa31dfc5dcac0bf11e"
      ],
      "author": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Fri Mar 27 15:23:03 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 27 15:23:04 2015 +0000"
      },
      "message": "Merge \"Unhide public API about cleartext traffic policy.\""
    },
    {
      "commit": "11ae768cf1b8348e761ad9c09e98788da1e591b1",
      "tree": "fa4a4e9fffc83e61af98476d41df4252e3cd1323",
      "parents": [
        "e7f931c4505a6bd62e01bef5193dd724571a672b"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Mar 24 18:48:10 2015 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Mar 26 18:57:36 2015 -0700"
      },
      "message": "Add payload-size preflight stage to full transport backup\n\nWe now peform a total-size preflight pass before committing data to the\nwire.  This is to eliminate the large superfluous network traffic that\nwould otherwise happen if the transport enforces internal quotas: we\nnow instead ask the transport up front whether it\u0027s prepared to accept\na given payload size for the package.\n\nFrom the app\u0027s perspective this preflight operation is indistinguishable\nfrom a full-data backup pass.  If the app has provided its own full-data\nhandling in a subclassed backup agent, their usual file-providing code\npath will be executed.  However, the files named for backup during this\npass are not opened and read; just measured for their total size.  As\nfar as component lifecycles, this measurement pass is simply another\ncall to the agent, immediately after it is bound, with identical\ntimeout semantics to the existing full-data backup invocation.\n\nOnce the app\u0027s file set has been measured the preflight operation\ninvokes a new method on BackupTransport, called checkFullBackupSize().\nThis method is called after performFullBackup() (which applies any\noverall whitelist/blacklist policy) but before any data is delivered\nto the transport via sendBackupData().  The return code from\ncheckFullBackupSize() is similar to the other transport methods:\nTRANSPORT_OK to permit the full backup to proceed; or\nTRANSPORT_REJECT_PACKAGE to indicate that the requested payload is\nunacceptable; or TRANSPORT_ERROR to report a more serious overall\ntransport-level problem that prevents a full-data backup operation\nfrom occurring right now.\n\nThe estimated payload currently does not include the size of the\nsource-package metadata (technically, the manifest entry in its\narchive payload) or the size of any widget metadata associated with\nthe package\u0027s install.  In practice this means the preflighted size\nunderestimates by 3 to 5 KB.  In addition, the preflight API currently\ncannot distinguish between payload sizes larger than 2 gigabytes;\nany payload estimate larger than that is passed as Integer.MAX_VALUE\nto the checkFullBackupSize() query.\n\nBug 19846750\n\nChange-Id: I44498201e2d4b07482dcb3ca8fa6935dddc467ca\n"
    },
    {
      "commit": "d7ecab1e875da3efc618e4458d2a1a20a956f9a3",
      "tree": "6aec9439b93c06d6a7c4655934d69fdf197cd9c7",
      "parents": [
        "aac10a21e3b9c7222c4d5f9814689c7184c1f00a"
      ],
      "author": {
        "name": "Miao Wang",
        "email": "miaowang@google.com",
        "time": "Thu Mar 26 18:00:15 2015 -0700"
      },
      "committer": {
        "name": "Miao Wang",
        "email": "miaowang@google.com",
        "time": "Thu Mar 26 18:00:15 2015 -0700"
      },
      "message": "[RenderScript] Remove @hide for setAutoPadding(boolean).\n\nChange-Id: I9e018436866989090be3896f894078ca0422189b\n"
    },
    {
      "commit": "aac10a21e3b9c7222c4d5f9814689c7184c1f00a",
      "tree": "079c08c4b5e96b5ab79d1249f1c6c3cd69eeae3d",
      "parents": [
        "d640b7a6c7ac0998a9f55bdcfff6bf2960edb9bd",
        "258db504bcd4265eeb95adbec04e131bcc8ec6c9"
      ],
      "author": {
        "name": "Miao Wang",
        "email": "miaowang@google.com",
        "time": "Fri Mar 27 00:35:30 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 27 00:35:31 2015 +0000"
      },
      "message": "Merge \"[RenderScript] Remove @hide for the new APIs for Allocation.CopyTo\""
    }
  ],
  "next": "258db504bcd4265eeb95adbec04e131bcc8ec6c9"
}
