)]}'
{
  "log": [
    {
      "commit": "a00271533f639c8ed36429c663889ac9f654bc72",
      "tree": "7f0c8045126bc0493c1fa018a114f803d34fa7ef",
      "parents": [
        "15ecbdd2e373195ef920faefa349a6e62200d1f1"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jun 25 14:59:53 2013 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jul 16 12:59:59 2013 -0700"
      },
      "message": "Refactoring of the print sub-system and API clean up.\n\n1. Now a user state has ins own spooler since the spooler app is\n   running per user. The user state registers an observer for the state\n   of the spooler to get information needed to orchestrate unbinding\n   from print serivces that have no work and eventually unbinding from\n   the spooler when all no service has any work.\n\n2. Abstracted a remote print service from the perspective of the system\n   in a class that is transparently managing binding and unbinding to\n   the remote instance.\n\n3. Abstracted the remote print spooler to transparently manage binding\n   and unbinding to the remote instance when there is work and when\n   there is no work, respectively.\n\n4. Cleaned up the print document adapter (ex-PrintAdapter) APIs to\n   enable implementing the all callbacks on a thread of choice. If\n   the document is really small, using the main thread makes sense.\n\n   Now if an app that does not need the UI state to layout the printed\n   content, it can schedule all the work for allocating resources, laying\n   out, writing, and releasing resources on a dedicated thread.\n\n5. Added info class for the printed document that is now propagated\n   the the print services. A print service gets an instance of a\n   new document class that encapsulates the document info and a method\n   to access the document\u0027s data.\n\n6. Added APIs for describing the type of a document to the new document\n   info class. This allows a print service to do smarts based on the\n   doc type. For now we have only photo and document types.\n\n7. Renamed the systemReady method for system services that implement\n   it with different semantics to systemRunning. Such methods assume\n   the the service can run third-party code which is not the same as\n   systemReady.\n\n8. Cleaned up the print job configuration activity.\n\n9. Sigh... code clean up here and there. Factoring out classes to\n   improve readability.\n\nChange-Id: I637ba28412793166cbf519273fdf022241159a92\n"
    },
    {
      "commit": "70725500dcf3b666b43d50563d64705aab58d2d3",
      "tree": "ad2d6206c590e11c4b86e871c138f2aabd822956",
      "parents": [
        "e363fbb2647aeb5ef4c87160d84c6b9ae8d45598"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Jun 25 20:27:06 2013 +0000"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Jun 26 13:19:45 2013 -0700"
      },
      "message": "Initial camera device implementation\n\n* Working streaming preview requests only\n* Almost everything else returns empty objects that don\u0027t do anything\n\nBug: 9213377\nChange-Id: Ie6f02a7c0952b0f5ebc41905425b15cae221f7d3\n"
    },
    {
      "commit": "36483e9622b399ea1368fb84ed0c5a5495f65e42",
      "tree": "d85873251b11f21bd14b6bf323f3c3aa553ace69",
      "parents": [
        "59bc67c732eab53b370b196066e8012d3f6bf09a"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Jun 25 05:13:55 2013 +0000"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Jun 25 05:13:55 2013 +0000"
      },
      "message": "Revert \"Initial camera device implementation\"\n\nThis reverts commit 59bc67c732eab53b370b196066e8012d3f6bf09a.\n\nChange-Id: I9e1ce3b9f4af4e2b9b98855c0ca533581c87ea7f\n"
    },
    {
      "commit": "59bc67c732eab53b370b196066e8012d3f6bf09a",
      "tree": "9f2a445f86fd3fe0723728348859f49db41dc7cb",
      "parents": [
        "e473f7d8f96b5682141522378b761913192d8114"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Jun 19 17:47:29 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Jun 24 17:41:10 2013 -0700"
      },
      "message": "Initial camera device implementation\n\n* Working streaming preview requests only\n* Almost everything else returns empty objects that don\u0027t do anything\n\nBug: 9213377\nChange-Id: I183dd47ddd737ec2c3c374e5c3461542a97f09b0\n"
    },
    {
      "commit": "fd90651cfcc7e2b75254666fd6861038b72fb4ac",
      "tree": "353b9d16b7a1ca29ba3eff59529f08f822cd941a",
      "parents": [
        "53f57d162b0553102fbd5c4ccdda87dbfce5b763"
      ],
      "author": {
        "name": "Svetoslav",
        "email": "svetoslavganov@google.com",
        "time": "Mon Jun 24 09:04:48 2013 -0700"
      },
      "committer": {
        "name": "Svetoslav",
        "email": "svetoslavganov@google.com",
        "time": "Mon Jun 24 09:05:38 2013 -0700"
      },
      "message": "Print APIs documentation update\n\nChange-Id: I0df438e45ef540cc42c9ee5baafc816ebafa1c7b\n"
    },
    {
      "commit": "4b9a4d16872bbb50712e007b419ac0b35ff1582d",
      "tree": "5799cec302adb4db9311bd7a9a889cbd217553a5",
      "parents": [
        "142dd91583f429db43017ada2497d0ecfdc2b392"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jun 11 15:20:06 2013 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Jun 21 18:43:17 2013 -0700"
      },
      "message": "Print - platform  APIs\n\nRelated changes:\n    Skia (inlcude PDF APIs): https://googleplex-android-review.googlesource.com/#/c/305814/\n    Canvas to PDF: https://googleplex-android-review.googlesource.com/#/c/319367/\n    Settings (initial version): https://googleplex-android-review.googlesource.com/#/c/306077/\n    Build: https://googleplex-android-review.googlesource.com/#/c/292437/\n    Sample print services: https://googleplex-android-review.googlesource.com/#/c/281785/\n\nChange-Id: I104d12efd12577f05c7b9b2a5e5e49125c0f09da\n"
    },
    {
      "commit": "4491d684f47fcf1e05652f910587a930be8a4135",
      "tree": "9692bbe442682bf876bad7f2554ddfcc13ae1851",
      "parents": [
        "4f057ffa2a9bed82d97c1889dc95d6b2bed8ff8d"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Fri May 31 16:43:48 2013 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Jun 11 11:36:38 2013 -0700"
      },
      "message": "camera: Add Java binder proxies for some existing binder interfaces\n\nNote that anything not in the AIDL interfaces, will NOT be magically\ncompatible if you just add it there. It probably requires a change in\nframeworks/av/camera as well.\n\nBug: 9213377\nChange-Id: I91d3efb755ed2e3ace139f83573f86efdccccd06\n"
    },
    {
      "commit": "2d66a4182a4712f60b0c63d854751fe13e44be0b",
      "tree": "c263c5a079f24a54916641f673a9cf10e35205c4",
      "parents": [
        "5404f9f1dcf9f0f6f4553a060e4b32645fc37b56",
        "6c5b979917b8189d7de75f9d622899ba1fb9e6d1"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed May 22 18:03:01 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 22 18:03:01 2013 -0700"
      },
      "message": "am 6c5b9799: am 1fa3cdf0: Merge \"Move offline-pdk to where the source is.\" into jb-mr2-dev\n\n* commit \u00276c5b979917b8189d7de75f9d622899ba1fb9e6d1\u0027:\n  Move offline-pdk to where the source is.\n"
    },
    {
      "commit": "6c5b979917b8189d7de75f9d622899ba1fb9e6d1",
      "tree": "d12ba52a62536fc4bce6616b9eeb3a0df37811f6",
      "parents": [
        "13a4f1a23d91ff8a3f6a446413a7b467cb5d509d",
        "1fa3cdf0cbc9bc788a313eda5d3ca3e2ad77fcc4"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed May 22 18:00:28 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 22 18:00:28 2013 -0700"
      },
      "message": "am 1fa3cdf0: Merge \"Move offline-pdk to where the source is.\" into jb-mr2-dev\n\n* commit \u00271fa3cdf0cbc9bc788a313eda5d3ca3e2ad77fcc4\u0027:\n  Move offline-pdk to where the source is.\n"
    },
    {
      "commit": "06acbf0e890ac74a659981c2b0759ccce9ef24c3",
      "tree": "9e4f2e6f22c6f82ca1ce21c4023edf8f1c540ecf",
      "parents": [
        "3c1ad55fcfa54c2c30073d07917da699d156dc58"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue May 21 18:03:29 2013 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue May 21 18:03:29 2013 -0700"
      },
      "message": "Move offline-pdk to where the source is.\n\nChange-Id: I10b05c28954a27f11482751e14287ec21422dce2\n"
    },
    {
      "commit": "5b48229b7406b2d80c189a978d71eda877ef36fc",
      "tree": "cbf2209f114e49eb78743f0e597b7356904da75d",
      "parents": [
        "5ffb7a8b9924ca44639fdb8d094bf162f99200a1",
        "9da9947d4c7a2195bf440f0af8370f0667af90bf"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon May 13 17:38:34 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 13 17:38:34 2013 -0700"
      },
      "message": "am 9da9947d: am 05002977: Merge \"Include support library resource modules when building docs.\" into jb-mr2-dev\n\n* commit \u00279da9947d4c7a2195bf440f0af8370f0667af90bf\u0027:\n  Include support library resource modules when building docs.\n"
    },
    {
      "commit": "9da9947d4c7a2195bf440f0af8370f0667af90bf",
      "tree": "15d3ef3135b1c0b3b568f0267cacfa43a0f609bb",
      "parents": [
        "bbb2b8d4474ac5de157fed37f09f1955559fc8e4",
        "0500297714a26c744304a323267d5d642f351326"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon May 13 17:35:21 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 13 17:35:21 2013 -0700"
      },
      "message": "am 05002977: Merge \"Include support library resource modules when building docs.\" into jb-mr2-dev\n\n* commit \u00270500297714a26c744304a323267d5d642f351326\u0027:\n  Include support library resource modules when building docs.\n"
    },
    {
      "commit": "ae1d6f2fd3869ff66cfad45547d166abefcd4319",
      "tree": "5f23e68b227836b41100bb2016224d5928120b80",
      "parents": [
        "9e2632037d3a683d2513e5e38437e00102a3076d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri May 10 20:37:12 2013 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri May 10 20:37:12 2013 -0700"
      },
      "message": "Include support library resource modules when building docs.\n\nBug: 8175766\nChange-Id: I0f0739d9f71386bae6c4ad23a2eb33e38d6a2d87\n"
    },
    {
      "commit": "81d45178ec9a0b0234103898fc5d515c7fe5564c",
      "tree": "9565f81b475a413c071813c40db704ddbd9aef80",
      "parents": [
        "961d8d0e95b8bdb53b27b71d1269e1653b6ec042",
        "2ff5a47999c5a6801e2e0530fbe1bf80ed25e8f1"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Tue May 07 10:25:15 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue May 07 10:25:15 2013 -0700"
      },
      "message": "am 2ff5a479: am a6303d8a: am 67430e8e: am 2e52e815: am 6b6fd9d1: am 36aa2759: am b582c678: Doc change: delete legacy intl dir and update toc\\\u0027s for devsite-compatible lang strings.\n\n* commit \u00272ff5a47999c5a6801e2e0530fbe1bf80ed25e8f1\u0027:\n  Doc change: delete legacy intl dir and update toc\u0027s for devsite-compatible lang strings.\n"
    },
    {
      "commit": "2ff5a47999c5a6801e2e0530fbe1bf80ed25e8f1",
      "tree": "daed64cecf0abd7c7eb3079ca3e72345066f7504",
      "parents": [
        "c1966dc6a0a350e8d1002217f3f0fde39ef823cd",
        "a6303d8a211543a8e1f5fd2425024a1c4d0f88ff"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Mon May 06 18:51:11 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 06 18:51:11 2013 -0700"
      },
      "message": "am a6303d8a: am 67430e8e: am 2e52e815: am 6b6fd9d1: am 36aa2759: am b582c678: Doc change: delete legacy intl dir and update toc\\\u0027s for devsite-compatible lang strings.\n\n* commit \u0027a6303d8a211543a8e1f5fd2425024a1c4d0f88ff\u0027:\n  Doc change: delete legacy intl dir and update toc\u0027s for devsite-compatible lang strings.\n"
    },
    {
      "commit": "a6303d8a211543a8e1f5fd2425024a1c4d0f88ff",
      "tree": "f52c98a11423691a9aead7e50d1d4c128ef88ceb",
      "parents": [
        "a4d7214dbebfbab151023bea52b5dfe166b058e0",
        "67430e8ec735c83f1f3304da7037e518aef6128a"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Mon May 06 18:49:14 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 06 18:49:14 2013 -0700"
      },
      "message": "am 67430e8e: am 2e52e815: am 6b6fd9d1: am 36aa2759: am b582c678: Doc change: delete legacy intl dir and update toc\\\u0027s for devsite-compatible lang strings.\n\n* commit \u002767430e8ec735c83f1f3304da7037e518aef6128a\u0027:\n  Doc change: delete legacy intl dir and update toc\u0027s for devsite-compatible lang strings.\n"
    },
    {
      "commit": "b582c678c88df2848023b7f27f4bc0ab2249e1e1",
      "tree": "9e27da7c24d2834a2e54d32170372104b52df568",
      "parents": [
        "1cd65b30904b07ae4226a6e438647ee3b63d7950"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Sat May 04 10:54:52 2013 -0700"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Mon May 06 18:38:24 2013 -0700"
      },
      "message": "Doc change: delete legacy intl dir and update toc\u0027s for devsite-compatible lang strings.\n\nChange-Id: Ie390d2bbd8abc0d063c1f313797e8c3d21d27490\n"
    },
    {
      "commit": "3b748a44c6bd2ea05fe16839caf73dbe50bd7ae9",
      "tree": "ea104e727beba793c10952f5b328478020859599",
      "parents": [
        "dd424cf079d2677e9333d89466f93166787e61c8"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Apr 17 18:54:38 2013 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu May 02 13:32:09 2013 -0700"
      },
      "message": "Pack preloaded framework assets in a texture atlas\n\nWhen the Android runtime starts, the system preloads a series of assets\nin the Zygote process. These assets are shared across all processes.\nUnfortunately, each one of these assets is later uploaded in its own\nOpenGL texture, once per process. This wastes memory and generates\nunnecessary OpenGL state changes.\n\nThis CL introduces an asset server that provides an atlas to all processes.\n\nNote: bitmaps used by skia shaders are *not* sampled from the atlas.\nIt\u0027s an uncommon use case and would require extra texture transforms\nin the GL shaders.\n\nWHAT IS THE ASSETS ATLAS\n\nThe \"assets atlas\" is a single, shareable graphic buffer that contains\nall the system\u0027s preloaded bitmap drawables (this includes 9-patches.)\nThe atlas is made of two distinct objects: the graphic buffer that\ncontains the actual pixels and the map which indicates where each\npreloaded bitmap can be found in the atlas (essentially a pair of\nx and y coordinates.)\n\nHOW IS THE ASSETS ATLAS GENERATED\n\nBecause we need to support a wide variety of devices and because it\nis easy to change the list of preloaded drawables, the atlas is\ngenerated at runtime, during the startup phase of the system process.\n\nThere are several steps that lead to the atlas generation:\n\n1. If the device is booting for the first time, or if the device was\nupdated, we need to find the best atlas configuration. To do so,\nthe atlas service tries a number of width, height and algorithm\nvariations that allows us to pack as many assets as possible while\nusing as little memory as possible. Once a best configuration is found,\nit gets written to disk in /data/system/framework_atlas\n\n2. Given a best configuration (algorithm variant, dimensions and\nnumber of bitmaps that can be packed in the atlas), the atlas service\npacks all the preloaded bitmaps into a single graphic buffer object.\n\n3. The packing is done using Skia in a temporary native bitmap. The\nSkia bitmap is then copied into the graphic buffer using OpenGL ES\nto benefit from texture swizzling.\n\nHOW PROCESSES USE THE ATLAS\n\nWhenever a process\u0027 hardware renderer initializes its EGL context,\nit queries the atlas service for the graphic buffer and the map.\n\nIt is important to remember that both the context and the map will\nbe valid for the lifetime of the hardware renderer (if the system\nprocess goes down, all apps get killed as well.)\n\nEvery time the hardware renderer needs to render a bitmap, it first\nchecks whether the bitmap can be found in the assets atlas. When\nthe bitmap is part of the atlas, texture coordinates are remapped\nappropriately before rendering.\n\nChange-Id: I8eaecf53e7f6a33d90da3d0047c5ceec89ea3af0\n"
    },
    {
      "commit": "178e8bbf25b6d211439133ec8525b7bab52f7796",
      "tree": "f5888c66301c9967870090085aa2ba2dd08dd12a",
      "parents": [
        "6a5a04ae66c4094164605b59cdc3a35a63c9a26e",
        "e9ae6822a80cb1f3bd13c785f1727c03d35da52e"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Apr 30 09:01:38 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 30 09:01:38 2013 -0700"
      },
      "message": "am e9ae6822: resolved conflicts for merge of 1f6e789b to jb-mr2-dev-plus-aosp\n\n* commit \u0027e9ae6822a80cb1f3bd13c785f1727c03d35da52e\u0027:\n  Track change to JSSE provider\n"
    },
    {
      "commit": "e9ae6822a80cb1f3bd13c785f1727c03d35da52e",
      "tree": "b1458872d38a68b06c277276a3062bac0247509d",
      "parents": [
        "be53f1806cf9f0ec69f785a0063227e0ed795eb8",
        "1f6e789b7ee9698ab8c528a393c28cce500ace04"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Apr 29 23:09:03 2013 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Apr 29 23:09:03 2013 -0700"
      },
      "message": "resolved conflicts for merge of 1f6e789b to jb-mr2-dev-plus-aosp\n\nChange-Id: I06c05d637613215b6d83df3e29cd495f6a5a0176\n"
    },
    {
      "commit": "12e752225aa96888358294be0d725d499a1c9f03",
      "tree": "d716c7eedc50ccdf146aaca9b55fae969cf753ec",
      "parents": [
        "28b1f0ee02e14241ffb81f431fc54053771c1c90"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Apr 23 22:34:24 2013 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Apr 29 15:15:27 2013 -0700"
      },
      "message": "Track change to JSSE provider\n\nChange-Id: I35e824e47ad758ab6408e91e2ba5dcda053a82f5\n"
    },
    {
      "commit": "5ae02e92e4ea2621ae6be6076e304a972793e2f3",
      "tree": "2efdc361f1eb6f08aaca456819c6eadad7e1ca0f",
      "parents": [
        "65e46420ea0c24f53e36b08f4e927f3d0db3f895",
        "eb6403e95d601b62be7b4610599e72fd329f2666"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 26 12:06:15 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Apr 26 12:06:15 2013 -0700"
      },
      "message": "am eb6403e9: resolved conflicts for merge of bfdd2566 to jb-mr2-dev-plus-aosp\n\n* commit \u0027eb6403e95d601b62be7b4610599e72fd329f2666\u0027:\n  Generate SDK docs for v7 support library packages.\n"
    },
    {
      "commit": "eb6403e95d601b62be7b4610599e72fd329f2666",
      "tree": "c96fdc83af8f0154930e0ff38de2d6ba8e3f4879",
      "parents": [
        "962b038d011d06ef8803afaead33ad10ff0133ca",
        "bfdd25663289546ad38586c87f5c0db6c6fb7812"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 26 12:02:36 2013 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 26 12:04:07 2013 -0700"
      },
      "message": "resolved conflicts for merge of bfdd2566 to jb-mr2-dev-plus-aosp\n\nChange-Id: I42e15a186561222edd0d97047fcd207208a87282\n"
    },
    {
      "commit": "caf7b0a155f6adef1b9af6cbf7370460c55e3a3f",
      "tree": "c69a8effe9c9299b687232dc672094f9c76c7b00",
      "parents": [
        "22f6a60e62253436a4f7da1a5d59adc0f17534cc"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Apr 25 21:24:44 2013 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 26 00:20:42 2013 -0700"
      },
      "message": "Generate SDK docs for v7 support library packages.\n\nThis change required fixing some bugs in how AAPT handles\nqualified symbols such as \"android:layout_height\"\nwhen generating JavaDoc links.  The links were being\ngenerated using the package name of the generated R file\nrather than the package name of the referenced symbol.\nThese broken links caused the JavaDoc build to fail.\n\nBug: 8175766\nChange-Id: I52fbef27825a25abca960cb44b59c2132267e9d6\n"
    },
    {
      "commit": "dfe49e9c9f62d55f72f65e84effcdf647e30f77e",
      "tree": "8e04ea166de8c2a37a5a237c8f05268d36775a87",
      "parents": [
        "058feb4e1d18bc1fcedac019d2364ebfd9a4c383",
        "09e9e1a5e7e3dd161b73f4254f239cab0410438a"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Apr 23 11:16:11 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 23 11:16:11 2013 -0700"
      },
      "message": "am 09e9e1a5: am edced26f: Merge \"Add ContentValues \u0026 CursorWindow to framework.aidl\" into jb-mr2-dev\n\n* commit \u002709e9e1a5e7e3dd161b73f4254f239cab0410438a\u0027:\n  Add ContentValues \u0026 CursorWindow to framework.aidl\n"
    },
    {
      "commit": "09e9e1a5e7e3dd161b73f4254f239cab0410438a",
      "tree": "5e2818e5379867f4c33a166cd97b401975a51562",
      "parents": [
        "585000515faacc02736f920425ae6c323223ee58",
        "edced26f162b0232338064e569fe651b8c805f93"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Apr 23 03:51:56 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 23 03:51:56 2013 -0700"
      },
      "message": "am edced26f: Merge \"Add ContentValues \u0026 CursorWindow to framework.aidl\" into jb-mr2-dev\n\n* commit \u0027edced26f162b0232338064e569fe651b8c805f93\u0027:\n  Add ContentValues \u0026 CursorWindow to framework.aidl\n"
    },
    {
      "commit": "bb392ba5f72fac676d5a1454846d4713d2cd7ef5",
      "tree": "f0b3c6cb634862af1cb17d027e5b26666da5d40e",
      "parents": [
        "8adf5d2b0d3c59e085837159173c3228061ce3e7"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Apr 22 15:52:03 2013 +1000"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Apr 23 08:30:34 2013 +1000"
      },
      "message": "Add ContentValues \u0026 CursorWindow to framework.aidl\n\nBy adding these stubs, they will be automatically added to framework.aidl\nin sdk builds.\n\nThis makes it easier for unbundled apps to pass these objects across\nAIDL calls.\n\nContentValues \u0026 CursorWindow are already public Parcelables. It is an\noversight that they were not already in framework.aidl.\n\nThere are a lot of other public Parcelables that are missing from\nframework.aidl. This just fixes two commonly requested ones.\n\nChange-Id: If61e19b1206da1680413d9ea03de87a90b6d233e\n"
    },
    {
      "commit": "032aeafd682d37bb51642892ca53d003509e4ea4",
      "tree": "ebfbbf85df6238d1e861f8446d767fd31020f7c6",
      "parents": [
        "5faf1985af14d717de924530fbd78a691a732f58",
        "d5af1724500f42e389cc2b8a0be9bacdf53405ad"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Wed Apr 17 22:25:18 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 17 22:25:18 2013 -0700"
      },
      "message": "am d5af1724: am 176c245c: Merge \"Hardware geofence API changes.\" into jb-mr2-dev\n\n* commit \u0027d5af1724500f42e389cc2b8a0be9bacdf53405ad\u0027:\n  Hardware geofence API changes.\n"
    },
    {
      "commit": "d5af1724500f42e389cc2b8a0be9bacdf53405ad",
      "tree": "eeea4601aa34d375612d2be3ea77dae9ce35c79e",
      "parents": [
        "3e3a7b3b1ed641dfa7c321f48bd228c59dc3c180",
        "176c245cefaf08f33043e9b67cb787efeb6ad662"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Wed Apr 17 22:21:32 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 17 22:21:32 2013 -0700"
      },
      "message": "am 176c245c: Merge \"Hardware geofence API changes.\" into jb-mr2-dev\n\n* commit \u0027176c245cefaf08f33043e9b67cb787efeb6ad662\u0027:\n  Hardware geofence API changes.\n"
    },
    {
      "commit": "da6508954a492f3dd4397e70e4fa08ee54bd2741",
      "tree": "925e76b5d0c132c104b3ff32a762ea2b0a12e319",
      "parents": [
        "5584737fff6350ab09fb53e6a73bbff770930727"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Wed Apr 17 12:19:10 2013 -0700"
      },
      "committer": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Wed Apr 17 22:18:01 2013 -0700"
      },
      "message": "Hardware geofence API changes.\n\nb/8631678\n\n1.GeofenceRequest object created.\n2.MonitorState moved to a new callback\n3.getTypeAndStatus separated to 2 calls.\n4.Binder death implemented\n5.geofenceChange callback name changed.\n6.Parameters rearranged in some calls.\n\nChange-Id: I8fe9621186aeb49efeb0eef1821a2556afe03cfc\n"
    },
    {
      "commit": "c541ca0d68bdb2a07d93fa8f49bb0a14524fb1f3",
      "tree": "19e16f00c81728bfbffd81c9be077ff29a9e8ced",
      "parents": [
        "0fe79c0fe4b896bef1dcf8598d9fd0c2a64d7607",
        "2f8caf6a74c5d6bcddbc4fae57945c83e85788bd"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 11 14:58:01 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 11 14:58:01 2013 -0700"
      },
      "message": "am 2f8caf6a: am dac80f63: Merge \"add api level 18 to javadoc \\\u0027since\\\u0027 tags\" into jb-mr2-dev\n\n* commit \u00272f8caf6a74c5d6bcddbc4fae57945c83e85788bd\u0027:\n  add api level 18 to javadoc \u0027since\u0027 tags\n"
    },
    {
      "commit": "2f8caf6a74c5d6bcddbc4fae57945c83e85788bd",
      "tree": "9e9e782005c693b53edfd65bef58b70bbc2d72e4",
      "parents": [
        "0b234469bfc45006c10297fb95206c50260a21da",
        "dac80f633977308ec87cca1dea802e81d0fb75ad"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 11 12:03:54 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 11 12:03:54 2013 -0700"
      },
      "message": "am dac80f63: Merge \"add api level 18 to javadoc \\\u0027since\\\u0027 tags\" into jb-mr2-dev\n\n* commit \u0027dac80f633977308ec87cca1dea802e81d0fb75ad\u0027:\n  add api level 18 to javadoc \u0027since\u0027 tags\n"
    },
    {
      "commit": "0d9e45a24ecb6fe11fe6f2ccd372d547293aaa38",
      "tree": "275b0cdfe714619f31bbe2a24cfe8c4c25c5972c",
      "parents": [
        "651f99cb5588ccd313e2e532a6b9ccf9d679ff44"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 11 11:37:29 2013 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 11 11:37:29 2013 -0700"
      },
      "message": "add api level 18 to javadoc \u0027since\u0027 tags\n\nChange-Id: Iea2e13ef2fad47d6a19d380b5655aeeda0414930\n"
    },
    {
      "commit": "a934b7c99ac558ba45a2a6fb8c6e3769cdd3db4b",
      "tree": "0d2372073f151532a5adacb551c5d0decd1f2bff",
      "parents": [
        "0bc0a676200daf764afd363d983f59a9a32f7e48",
        "7228e1aeb9a2af8fad410749e2adc61266b2649a"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Wed Apr 10 15:38:24 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 10 15:38:24 2013 -0700"
      },
      "message": "am 7228e1ae: am 8ce470dd: GPS Hardware geofencing.\n\n* commit \u00277228e1aeb9a2af8fad410749e2adc61266b2649a\u0027:\n  GPS Hardware geofencing.\n"
    },
    {
      "commit": "7228e1aeb9a2af8fad410749e2adc61266b2649a",
      "tree": "e4df439a6bf502bfefc452a3949c22b9c35cb72d",
      "parents": [
        "04958d154370fde4db2deecfdfded210b694688d",
        "8ce470dd4ba0608abb6b5eae117cefca927af96b"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Wed Apr 10 15:34:35 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 10 15:34:35 2013 -0700"
      },
      "message": "am 8ce470dd: GPS Hardware geofencing.\n\n* commit \u00278ce470dd4ba0608abb6b5eae117cefca927af96b\u0027:\n  GPS Hardware geofencing.\n"
    },
    {
      "commit": "8ce470dd4ba0608abb6b5eae117cefca927af96b",
      "tree": "e8746efbeec5ac1b39d7f594a1012514b44d491d",
      "parents": [
        "8d06cc6d871fce6d5d6b6283027d4625edd92550"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Wed Apr 03 12:22:18 2013 -0700"
      },
      "committer": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Wed Apr 10 15:25:07 2013 -0700"
      },
      "message": "GPS Hardware geofencing.\n\nAdd support for doing geofencing in hardware.\n\nChange-Id: I6d5015190e8d84e1f4beb1010ed977a71c1622d0\n"
    },
    {
      "commit": "8740cb1da6adb71a4e195774801c97db5853b097",
      "tree": "9accacb597684fcdc3399e95bdc7bcf0a7419b59",
      "parents": [
        "c71b045d88c222b78d9bc6da99f9ececfc4a16f6",
        "29211d3a16b807ddab47e46c9d955bf508c4d9b5"
      ],
      "author": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Fri Apr 05 16:18:59 2013 -0400"
      },
      "committer": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Fri Apr 05 16:18:59 2013 -0400"
      },
      "message": "resolved conflicts for merge of 29211d3a to master\n\nChange-Id: I9691f41b12fbf52d0ef35a9bf5223edef7afdfd2\n"
    },
    {
      "commit": "29211d3a16b807ddab47e46c9d955bf508c4d9b5",
      "tree": "d41d60f07da2630700ce7d0b9f7c3a886dbde15c",
      "parents": [
        "d339818d9a261974e535cd25797d7a614a17657d",
        "5feceebb892d4cb5777cea3c6174b206705d456b"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri Apr 05 12:58:43 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Apr 05 12:58:43 2013 -0700"
      },
      "message": "am 5feceebb: New NotificationListenerService.\n\n* commit \u00275feceebb892d4cb5777cea3c6174b206705d456b\u0027:\n  New NotificationListenerService.\n"
    },
    {
      "commit": "5feceebb892d4cb5777cea3c6174b206705d456b",
      "tree": "58feee1605f35b07e70887f4ec017d80b5687436",
      "parents": [
        "bab9687e6473072d6ff4f7ea5a7b21bcfbf95744"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri Mar 22 18:29:23 2013 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 05 19:54:44 2013 +0000"
      },
      "message": "New NotificationListenerService.\n\nThis is the best and only way for apps to listen for\nnotifications: create a NotificationListenerService, wait\nfor the NoMan to bind to you (as a result of the user\nchecking a box somewhere in Settings and agreeing to a\nscary dialog box), and you\u0027ll start receiving notification\nposted and dismissed callbacks. Your service, while enabled,\nwill also be able to clear one or all notifications.\n\nUse this power wisely.\n\nThis change moves StatusBarNotification out of\ncom.android.internal into android.service.notification.\n[Internal customers, including System UI and early users of\nthe system-only listener binder API, will need to be\nupdated.]\n\nBug: 8199624\nChange-Id: I1be46f823d4b3ddc901109ec1e085cd6deb740c2\n"
    },
    {
      "commit": "96242a1b17280b0250976cd44aa1e07c7912a384",
      "tree": "45040aaf9af5b23ff523b260e735f2ad900fe601",
      "parents": [
        "a81c6a703e3c76a10f0497d2aba38e0041861deb",
        "3c7df09d4dd00fb23da888726182f00788957cd9"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Apr 03 14:12:27 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 03 14:12:27 2013 -0700"
      },
      "message": "am 3c7df09d: am 6fdcb168: Merge \"Adjust the HttpResponseCache for OkHttp.\"\n\n* commit \u00273c7df09d4dd00fb23da888726182f00788957cd9\u0027:\n  Adjust the HttpResponseCache for OkHttp.\n"
    },
    {
      "commit": "3c7df09d4dd00fb23da888726182f00788957cd9",
      "tree": "312ae96edd562e17c997bff89c229786c21e72eb",
      "parents": [
        "9668dddd6f6ccb24455eb492db3949cb8e0fc694",
        "6fdcb168a7a0a4f508063019ca4d2ec35458f892"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Apr 03 14:06:55 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 03 14:06:55 2013 -0700"
      },
      "message": "am 6fdcb168: Merge \"Adjust the HttpResponseCache for OkHttp.\"\n\n* commit \u00276fdcb168a7a0a4f508063019ca4d2ec35458f892\u0027:\n  Adjust the HttpResponseCache for OkHttp.\n"
    },
    {
      "commit": "dea64ad715c121bfc5cd1881abc51fac9b1d04d6",
      "tree": "5888ff7e6be6b8b91282c4b27c0cb4984a905a16",
      "parents": [
        "a7e4795bb35986164294e6f7ef56e31c9de0c06d"
      ],
      "author": {
        "name": "jwilson",
        "email": "jwilson@squareup.com",
        "time": "Sat Mar 30 09:06:48 2013 -0400"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Apr 03 20:15:36 2013 +0000"
      },
      "message": "Adjust the HttpResponseCache for OkHttp.\n\nChange-Id: I2a80f3c3f30a3d15673d797fa3d1211286f75030\n"
    },
    {
      "commit": "c5ebd80c43e388977e4ef978f18fa5fc36bd8650",
      "tree": "d9d593a8d719a6aeb6ef562874ae05077d6d13e6",
      "parents": [
        "96f2fef2460adcf815baa1c2a74e417451fe1237",
        "901b77c63bc707c5785a149975e2113a43e38ad6"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Mar 26 19:48:23 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Mar 26 19:48:23 2013 -0700"
      },
      "message": "am 901b77c6: am ca3d655d: Merge \"Use input transport for communications between app and IME.\" into jb-mr2-dev\n\n* commit \u0027901b77c63bc707c5785a149975e2113a43e38ad6\u0027:\n  Use input transport for communications between app and IME.\n"
    },
    {
      "commit": "c28867a1d67121ce5963de135e3ae2b1dbd9a33d",
      "tree": "95da9070093882f0b95ee197f45f5b4a5e348d96",
      "parents": [
        "37f180b4a52e4c1d0b6a7b400b6579b7ff25f307"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Mar 26 15:42:39 2013 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Mar 26 15:42:39 2013 -0700"
      },
      "message": "Use input transport for communications between app and IME.\n\nThe input method manager service now supplies an input channel for\ncommunication while creating an IME session on behalf of the\napplication.\n\nThis change significanly reduces the overhead of IME event dispatch\nby using a standard input channel to send input events rather than\nusing binder.  This results in fewer thread context switches\nand fewer object allocations.\n\nWhat\u0027s more, the IME may perform additional batching of the motion\nevents that it receives which may help it catch up if it is\ngetting behind while processing them.\n\nBug: 7984576\nBug: 8473020\nChange-Id: Ibe26311edd0060cdcae80194f1753482e635786f\n"
    },
    {
      "commit": "0878312fd96be3499d982dd4029ffc8cdd487bab",
      "tree": "be5507f84a23cd587df26149169051202d7193b4",
      "parents": [
        "dd1e7728c0429357efc586cef81399b50ca58e31",
        "621c35e4fc83c2864a82da31aac767832ce86df6"
      ],
      "author": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Fri Mar 22 03:42:25 2013 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Mar 22 03:42:25 2013 +0000"
      },
      "message": "am 621c35e4: am 765ddb4b: Merge \"Separate sessionCreated and finishedEvents callbacks\" into jb-mr2-dev\n\n* commit \u0027621c35e4fc83c2864a82da31aac767832ce86df6\u0027:\n  Separate sessionCreated and finishedEvents callbacks\n"
    },
    {
      "commit": "52a53526265c801b70eaf6dab1acf5c3f628f8a6",
      "tree": "37e128cc5a301edb375a4c106a28634b7f8d69a1",
      "parents": [
        "95ae9429ee3555f4a1f396da423413ba496bdf33"
      ],
      "author": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Thu Mar 14 10:59:38 2013 -0700"
      },
      "committer": {
        "name": "Michael Wright",
        "email": "michaelwr@google.com",
        "time": "Thu Mar 21 17:47:40 2013 -0700"
      },
      "message": "Separate sessionCreated and finishedEvents callbacks\n\nBug: 8276952\nChange-Id: If7051086c060fcce5d1e958ebbddec0784c851da\n"
    },
    {
      "commit": "294b512ecaa98a6a8ef12285ad14e7a4091b5d57",
      "tree": "d89983eed02f4cc3fc48fb50cd0d779ff345752b",
      "parents": [
        "2042cc403a6eba2de1c5220e8402b045bdf24192"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Feb 19 14:08:59 2013 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Mar 08 15:08:10 2013 -0800"
      },
      "message": "DO NOT MERGE - Full backup/restore now handles OBBs sensibly\n\nOBB backup/ restore is no longer handled within the target app\nprocess.  This is done to avoid having to require that OBB-using\napps have full read/write permission for external storage.\n\nThe new OBB backup service is a new component running in the\nsame app as the already-existing shared storage backup agent.\nThe backup infrastructure delegates backup/restore of apps\u0027\nOBB contents to this component (because the system process\nmay not itself read/write external storage).\n\nFrom the command line, OBB backup is enabled by using new\n-obb / -noobb flags with adb backup.  The default is noobb.\n\nFinally, a couple of nit fixes:\n\n- buffer-size mismatch between the writer and reader of chunked\n  file data has been corrected; now the reading side won\u0027t be\n  issuing an extra pipe read per chunk.\n\n- bu now explicitly closes the transport socket fd after\n  adopting it. This was benign but triggered a logged\n  warning about leaked fds.\n\n(Cherrypicked)\n\nChange-Id: I471f6348abcccb7bf1e1710b7beda9f23de53e14\n"
    },
    {
      "commit": "46cc43c6fa7623820d4ae9149496cf96bb15f8a3",
      "tree": "fe3a33bcdf0dc82414eb274aedefaef53aace059",
      "parents": [
        "32884c376fd06799f46ea3b1ded89ba9d21f8f14"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Feb 19 14:08:59 2013 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Mar 07 13:47:20 2013 -0800"
      },
      "message": "Full backup/restore now handles OBBs sensibly\n\nOBB backup/ restore is no longer handled within the target app\nprocess.  This is done to avoid having to require that OBB-using\napps have full read/write permission for external storage.\n\nThe new OBB backup service is a new component running in the\nsame app as the already-existing shared storage backup agent.\nThe backup infrastructure delegates backup/restore of apps\u0027\nOBB contents to this component (because the system process\nmay not itself read/write external storage).\n\nFrom the command line, OBB backup is enabled by using new\n-obb / -noobb flags with adb backup.  The default is noobb.\n\nFinally, a couple of nit fixes:\n\n- buffer-size mismatch between the writer and reader of chunked\n  file data has been corrected; now the reading side won\u0027t be\n  issuing an extra pipe read per chunk.\n\n- bu now explicitly closes the transport socket fd after\n  adopting it. This was benign but triggered a logged\n  warning about leaked fds.\n\nBug: 6718844\nChange-Id: Ie252494e2327e9ab97cf9ed87c298410a8618492\n"
    },
    {
      "commit": "ee61a7fb95b96880042a963c78774a148eed8c15",
      "tree": "ef3731046e830d105f9897ce5956826ccc3839c0",
      "parents": [
        "3e708d280bbc9034d9e7ed23e821b13bc95e8e60",
        "530b2b1c98e3a3d86fd90cd91a08005370b8aa49"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 05 21:08:13 2013 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Mar 05 21:08:13 2013 +0000"
      },
      "message": "am 530b2b1c: am a5513616: Merge \"Add new WindowId for cross-process monitoring of focus.\" into jb-mr2-dev\n\n* commit \u0027530b2b1c98e3a3d86fd90cd91a08005370b8aa49\u0027:\n  Add new WindowId for cross-process monitoring of focus.\n"
    },
    {
      "commit": "e3f23a36d86fedf6c8c6503378cd6d2190c5ab23",
      "tree": "cb4cb3a9598cd94d320203f7f1ba34842599b435",
      "parents": [
        "7be6d4c421cfa6f93079517d3ee54024c8049ae5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Mar 01 13:25:35 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 05 09:33:48 2013 -0800"
      },
      "message": "Add new WindowId for cross-process monitoring of focus.\n\nThis is a class representing a window and providing limited\ninteraction with it, which can be handed across processes.\n\nChange-Id: I22885f2064a9cc8c68d690a5858c2e28bbb6a0f3\n"
    },
    {
      "commit": "25190577cc69eaa5930c6fbdc2fcca03afc84982",
      "tree": "6e0679b910c2949f5cd66e1ac0e7d70acef9ed41",
      "parents": [
        "32e18d9f325d8ba59d90505008578f9448031496"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Feb 28 17:36:24 2013 -0800"
      },
      "committer": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Feb 28 17:41:34 2013 -0800"
      },
      "message": "Post-review Keyguard cleanup.\n\n- remove userActivity() from KeyguardService interface and call it\non PowerManager directly\n- Split IKeyguardResult into two parts: IKeyguardShowCallback and\nIKeyguardExitCallback.\n- Misc other changes from the review.\n\nChange-Id: I3f679cfa5d3f8bc742f2b2259ac354045e89a87b\n"
    },
    {
      "commit": "9e0a5668398ee31b07d5fd2615c98f5ea5290167",
      "tree": "5b6fd85963dd6ea07ae1eadbe413abab6feb3dcd",
      "parents": [
        "ea104b64f4667e1d5d5f0e46e2f8c5abb24137d2",
        "23b046c4af6672d96a4ef7bb27fb444e40f0bd5d"
      ],
      "author": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Thu Feb 28 22:38:38 2013 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Feb 28 22:38:38 2013 +0000"
      },
      "message": "am 23b046c4: Merge \"Initial version of BLE support for Bluedroid\" into jb-mr2-dev\n\n* commit \u002723b046c4af6672d96a4ef7bb27fb444e40f0bd5d\u0027:\n  Initial version of BLE support for Bluedroid\n"
    },
    {
      "commit": "9908112fd085d8b0d91e0562d32eebd1884f09a5",
      "tree": "6e2d696a2a3f642f5317fa6be82913246c6864b1",
      "parents": [
        "35cd94ab97ac95401bafef8237d74e91d81ef08d"
      ],
      "author": {
        "name": "Ganesh Ganapathi Batta",
        "email": "ganeshg@broadcom.com",
        "time": "Tue Feb 05 15:28:33 2013 -0800"
      },
      "committer": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Wed Feb 27 18:08:14 2013 -0800"
      },
      "message": "Initial version of BLE support for Bluedroid\n\nThe API classes are hidden for now. Will unhide after API console\napproval.\nChange-Id: I8283dd562fd6189fdd15c866ef2efb8bbdbc4109\n"
    },
    {
      "commit": "5ecd81154fa039961f65bb4e36d18ac555b0d1d6",
      "tree": "ce0d9d0e4ade28d865fb5005fa03fed78ad9ff91",
      "parents": [
        "25a272a9f6323f6a3513bb522d45e839449878ce"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Wed Jan 09 18:50:26 2013 -0800"
      },
      "committer": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Wed Feb 27 17:27:53 2013 -0800"
      },
      "message": "Move keyguard to its own process.\n\nThis is in preparation to moving keyguard into its own process.\n\nMoved keyguard source and resources into new .apk.\n\nGot basic test app working.  Still need to implement MockPatternUtils\nand means to pass it into KeyguardService with local binder interface.\n\nAdded new ACCESS_KEYGUARD_SECURE_STORAGE permission.\n\nTemporarily disabled USER_PRESENT broadcast.\n\nRemove unintentional whitespace changes in PhoneWindowManager, etc.\n\nCheckpoint basic working version.\n\nMove to systemui process.\n\nSynchronize with TOT.\n\nSync with recent user API changes.\n\nFix bug with returing interface instead of stub for IKeyguardResult.  Create KeyguardServiceDelegate to allow\nfor runtime-selectable local or remote interface.\n\nMore keyguard crash robustness.\n\nKeyguard crash recovery working.  Currently fails safe (locked).\n\nFix selector view which was still using frameworks resources.\n\nRemove more references to internal framework variables.  Use aliases for those we should move but\ncurrently have dependencies.\n\nAllow runtime switching between service and local mode.\n\nFix layout issue on tablets where orientation was reading the incorrect constant\nfrom the framework.  Remove more framework dependencies.\n\nFix PIN keyboard input.\n\nRemove unnecessary copy of orientation attrs.\n\nRemove unused user selector widget and attempt to get multi user working again.\n\nFix multi-user avatar icon by grabbing it from UserManager rather than directly since\nkeyguard can no longer read it.\n\nMerge with AppWidget userId changes in master.\n\nChange-Id: I254d6fc6423ae40f6d7fef50aead4caa701e5ad2\n"
    },
    {
      "commit": "09a247e9a86df068422cbe8b60430fb6583c028c",
      "tree": "d6f63d7f593bb9d062ff47ed655e0c73a1ba5893",
      "parents": [
        "5acb33af357b56fffb055997718b1e4aa97f53fc"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Thu Feb 14 10:24:17 2013 -0500"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Tue Feb 19 15:26:37 2013 -0500"
      },
      "message": "New INotificationListener interface.\n\nUse with INotificationManager.registerListener(). Limited to\nsystem only right now.\n\nChange-Id: I65b6a8778267022cdc5e58eb75ae607a54b1cc52\n"
    },
    {
      "commit": "4c818473d43e0d3dcc325365221b26f48951bcdd",
      "tree": "d943152d7e8f3b8d1ed9e9dc8702b0364f3fdc9a",
      "parents": [
        "35185a9ccf016f1d5fbe055e89a6c4c79a247981"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Feb 12 17:18:44 2013 -0800"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Feb 12 17:18:44 2013 -0800"
      },
      "message": "Remove the unnecessary framework-res-package-target\n\nNow the dependency should be correctly established by\nframework_docs_LOCAL_JAVA_LIBRARIES.\n\nChange-Id: I4c0ed2d3fb2855539027c7a0eb663f5747ae3ebd\n"
    },
    {
      "commit": "16e8c1ed1b5cd98cefd128b9088dec803e67295f",
      "tree": "d1a89c9f473ff8bbe521471fca803748828ffe0f",
      "parents": [
        "d9f98c81068594c33c81b5b817391c6b4b895492"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Feb 12 21:39:28 2013 +0000"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Feb 12 14:00:39 2013 -0800"
      },
      "message": "Revert \"makefile changes for gcm javadocs\"\n\nThis reverts commit 5f9922d7c3bce158e4c7a58929d4075e7c91e32e\n\nChange-Id: I310f27b231c6d64d6d407ae451b189a6ecf6b34f\n"
    },
    {
      "commit": "6b2c7600e946b4130585f8665f9720d09feb6411",
      "tree": "e0472dad7ccbef7ae71fef4e7e3aed722b79af53",
      "parents": [
        "0b0952f24b804e0a6c6a20a0d36dde14c60913d2",
        "e47033f9294056ab54c63608ab0a46de995fae63"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Feb 12 13:58:44 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 12 13:58:44 2013 -0800"
      },
      "message": "am e47033f9: am 4d9aa17a: am 87db373a: am 2328a779: am 9eb66b2d: Merge \"Revert \"makefile changes for gcm javadocs\"\" into jb-mr1-dev\n\n# Via Android Git Automerger (4) and Android (Google) Code Review (2)\n* commit \u0027e47033f9294056ab54c63608ab0a46de995fae63\u0027:\n  Revert \"makefile changes for gcm javadocs\"\n"
    },
    {
      "commit": "2328a77980a8e4aa2dafac1b9a8e228877a7425c",
      "tree": "87b3e5d89ed51a09738b2ac4b77c6da1f1b84ba7",
      "parents": [
        "a95a64ddd6155e90308aa1368e2c8098d86e677f",
        "9eb66b2db4724da7a2d6575fee29840004f1a5df"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Feb 12 13:49:44 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 12 13:49:44 2013 -0800"
      },
      "message": "am 9eb66b2d: Merge \"Revert \"makefile changes for gcm javadocs\"\" into jb-mr1-dev\n\n# Via Android (Google) Code Review\n* commit \u00279eb66b2db4724da7a2d6575fee29840004f1a5df\u0027:\n  Revert \"makefile changes for gcm javadocs\"\n"
    },
    {
      "commit": "d3b50de375fd251e471aa0549e7677b4cf50e139",
      "tree": "d79cfd3359de6663bfd9f07ceaabfb37477cda93",
      "parents": [
        "5f9922d7c3bce158e4c7a58929d4075e7c91e32e"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Feb 12 21:39:28 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 12 21:39:28 2013 +0000"
      },
      "message": "Revert \"makefile changes for gcm javadocs\"\n\nThis reverts commit 5f9922d7c3bce158e4c7a58929d4075e7c91e32e\n\nChange-Id: I310f27b231c6d64d6d407ae451b189a6ecf6b34f\n"
    },
    {
      "commit": "590aaea06d25f22275b14630091451cc624b2c7d",
      "tree": "e7e4e190d4d27affc458e170929d9cec932e671c",
      "parents": [
        "d1a84242a7ba807310d8f8d389796c7163cb97a0",
        "6db87978270815b94280f0714b85389bb67c4a73"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Feb 12 10:55:43 2013 -0800"
      },
      "committer": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Feb 12 10:55:43 2013 -0800"
      },
      "message": "resolved conflicts for merge of 6db87978 to master\n\nChange-Id: If439f5730e32fb2044a1e464fab0f6afb6bf1d08\n"
    },
    {
      "commit": "a95a64ddd6155e90308aa1368e2c8098d86e677f",
      "tree": "012e91cd93323ee94b396be126c7fb3d3a7408ad",
      "parents": [
        "7209135504313c27da4f277235e00db6851b9577",
        "dc8ee2066a45adc6a57157c550e65317c8650ca0"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Feb 12 10:41:20 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 12 10:41:20 2013 -0800"
      },
      "message": "am dc8ee206: Merge \"Revert \"makefile changes for s.a.c\"\" into jb-mr1-dev\n\n# Via Android (Google) Code Review\n* commit \u0027dc8ee2066a45adc6a57157c550e65317c8650ca0\u0027:\n  Revert \"makefile changes for s.a.c\"\n"
    },
    {
      "commit": "343a89c2cd2bf4458eb24662010693ac590657b1",
      "tree": "e40487a2a80034fd66e6837c05018d29a1d41951",
      "parents": [
        "4c01047ec7b06aabeeae273c7871caa6c3029b84"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Feb 12 18:29:10 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 12 18:29:10 2013 +0000"
      },
      "message": "Revert \"makefile changes for s.a.c\"\n\nThis reverts commit 4c01047ec7b06aabeeae273c7871caa6c3029b84\n\nChange-Id: I4465cfa678717ff7c202347ae6ad36d12d5393bc\n"
    },
    {
      "commit": "f065d0f024c389aa76d2c1f4a47667634d456972",
      "tree": "de66d344e95592c24a6d1b991f71616910152f39",
      "parents": [
        "ae16a9b2cae5c2f750151a2f6e9e7f62efb38d66"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Mon Feb 11 20:58:43 2013 -0800"
      },
      "committer": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Mon Feb 11 20:58:43 2013 -0800"
      },
      "message": "remove sac make target to fix build\n\nChange-Id: I44c51e12225cd0b1d82bfb70129fefa8ba66e8b4\n"
    },
    {
      "commit": "e68cb0acd4f87f989250b2983f48f206e475a86e",
      "tree": "0917da3875ca9f9756f112c5556acb41c3a5f4f4",
      "parents": [
        "22f0d8c949b41c1494a4c6ca530853163fa86706",
        "a578ade219c07a04f7e8374939734de6ca7cc478"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Mon Feb 11 18:14:45 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 11 18:14:45 2013 -0800"
      },
      "message": "am a578ade2: am 1c4311cc: am 4af36f4e: am 96b1b403: am 4c01047e: makefile changes for s.a.c\n\n# Via Android Git Automerger (4) and Robert Ly (1)\n* commit \u0027a578ade219c07a04f7e8374939734de6ca7cc478\u0027:\n  makefile changes for s.a.c\n"
    },
    {
      "commit": "96b1b403b6ecf0daa2d7d0a8475e0d087790e457",
      "tree": "1f9d4a843d667126b06300cf1492e617f33e021a",
      "parents": [
        "337d3e3240e52ca5321029fdd23d2f2a3e1201d8",
        "4c01047ec7b06aabeeae273c7871caa6c3029b84"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Mon Feb 11 14:10:00 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 11 14:10:00 2013 -0800"
      },
      "message": "am 4c01047e: makefile changes for s.a.c\n\n# Via Robert Ly\n* commit \u00274c01047ec7b06aabeeae273c7871caa6c3029b84\u0027:\n  makefile changes for s.a.c\n"
    },
    {
      "commit": "4c01047ec7b06aabeeae273c7871caa6c3029b84",
      "tree": "fa8aca734349757249d94d58b2b38e740dc4b69d",
      "parents": [
        "7d8494913292dcdbe25d046cbef6e349d904b41c"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Fri Feb 08 14:37:13 2013 -0800"
      },
      "committer": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Mon Feb 11 13:38:31 2013 -0800"
      },
      "message": "makefile changes for s.a.c\n\nChange-Id: I501cc140994b2822c3df1f00639076f17765f256\n"
    },
    {
      "commit": "48e9219e6b0606aa04bcbdd3c9f1c6a72e9cd53e",
      "tree": "712b877ec8789d5b305473d714e8f0103951e34b",
      "parents": [
        "d68c0964765b48934f528600ba5fe51b45cb8ae1",
        "74e8693d310d75e98c5cf62340612d474f6f197b"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Thu Feb 07 18:03:20 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Feb 07 18:03:20 2013 -0800"
      },
      "message": "am 74e8693d: am ddc0a7bd: am 11fa4460: am 9da9a7cd: am e60b6023: Merge \"makefile changes for gcm javadocs\" into jb-mr1-dev\n\n# Via Android Git Automerger (4) and others\n* commit \u002774e8693d310d75e98c5cf62340612d474f6f197b\u0027:\n  makefile changes for gcm javadocs\n"
    },
    {
      "commit": "9da9a7cda27a9b9a3a08e64e81d0ca10ac4c4ec1",
      "tree": "418d4d1ffaf4a4f22ec31fde1ce82ef684aa7a12",
      "parents": [
        "b68702eb0526633e51d9dbfe6fc971c168e1274a",
        "e60b6023ae4fdea932d0effc553dddc38117d235"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Thu Feb 07 17:53:29 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Feb 07 17:53:29 2013 -0800"
      },
      "message": "am e60b6023: Merge \"makefile changes for gcm javadocs\" into jb-mr1-dev\n\n# Via Android (Google) Code Review (1) and Robert Ly (1)\n* commit \u0027e60b6023ae4fdea932d0effc553dddc38117d235\u0027:\n  makefile changes for gcm javadocs\n"
    },
    {
      "commit": "17cccb8ccbfb077334dcf37d9e93ec614ff8761e",
      "tree": "8ef0cb73060403ae9c8525d2d0f9141d159388f5",
      "parents": [
        "5ef8f22d71256e4db795796f7b88e5c4d7ee2843",
        "5a72553ef991d4821fcab4feaa3c1b23faca8724"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Fri Feb 08 01:06:02 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 08 01:06:10 2013 +0000"
      },
      "message": "Merge \"Move a few files from frameworks/opt/telephony to frameworks/base.\""
    },
    {
      "commit": "5a72553ef991d4821fcab4feaa3c1b23faca8724",
      "tree": "f97e7fbbe3777c306d531573144cfbb17e52bba2",
      "parents": [
        "484f3bdcd663d4ddc9521e788c45338b34a1691d"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Thu Feb 07 17:03:05 2013 -0800"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Thu Feb 07 17:03:05 2013 -0800"
      },
      "message": "Move a few files from frameworks/opt/telephony to frameworks/base.\n\nBecause ISms.aidl imports PendingIntent we couldn\u0027t easily\nmake opt/telephony part of the PDK. So this change moves\nISms.aidl and SmsRawData.*, which ISms.aidl also imports,\nback to frameworks/base.\n\nChange-Id: Ia64c6e771d5a292d9bfebb413a43f3745df55c85\n"
    },
    {
      "commit": "5f9922d7c3bce158e4c7a58929d4075e7c91e32e",
      "tree": "4650a457f02650e4ff1c937ba9c67d974bf24fe0",
      "parents": [
        "00f490844d89b146e5490204a5a483834950c489"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Dec 04 17:01:46 2012 -0800"
      },
      "committer": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Thu Feb 07 11:08:44 2013 -0800"
      },
      "message": "makefile changes for gcm javadocs\n\nChange-Id: I5653eb710f13f0a097cb1cf447469c4da7342fe2\n"
    },
    {
      "commit": "c2293025a25e04b26bf53713d71f85fd9ca5e8e9",
      "tree": "0a29790db261fd32404ea9aecfba5bc53e81fe57",
      "parents": [
        "0984780bc7aed76018b9f88c0d9c3ce300bde39a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Feb 06 23:14:49 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Feb 06 23:59:56 2013 -0800"
      },
      "message": "App ops: track system windows, monitoring changes.\n\nChange-Id: I273e82bdad66ada3bf0f7ec9176bc304b9ee1ee8\n"
    },
    {
      "commit": "feda56f2fbbb980f074bce4444578238544aefe1",
      "tree": "a73b7f8d4ce5ac85bc27990a1655dff19b49d9ad",
      "parents": [
        "1ea5c76050e2c3667cfb93863e3a493d681e7014",
        "25f97435302d8468afeb4ade9f00d5243b393082"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Mon Feb 04 13:17:32 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 04 13:17:32 2013 -0800"
      },
      "message": "am 25f97435: am 5fca0efa: am 6cb87b08: am 65fd9811: am 2aa47b33: Merge \"Doc change: remove htmlified samples from docs build for now. Samples are still downloadable thorugh SDK Manager.\" into jb-mr1-dev\n\n# Via Android Git Automerger (4) and others\n* commit \u002725f97435302d8468afeb4ade9f00d5243b393082\u0027:\n  Doc change: remove htmlified samples from docs build for now. Samples are still downloadable thorugh SDK Manager.\n"
    },
    {
      "commit": "d8a6100208c277e131e94df314b84e41b067ad7a",
      "tree": "3adcb3e8159885d73d10876c9939ad54ca4cc70c",
      "parents": [
        "4dfff520362bdd6b3f661e3aa371b2efa527fc64",
        "9dbf24797b82f4c70a75051050f32e53d1c35fe6"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Feb 04 13:17:21 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 04 13:17:21 2013 -0800"
      },
      "message": "am 9dbf2479: am 960deffd: am 78bf7c9c: am 1e7e1104: am 4b7161cb: docs: switch devsite doc build to use templates-sdk\n\n# Via Android Git Automerger (4) and Scott Main (1)\n* commit \u00279dbf24797b82f4c70a75051050f32e53d1c35fe6\u0027:\n  docs: switch devsite doc build to use templates-sdk\n"
    },
    {
      "commit": "4dfff520362bdd6b3f661e3aa371b2efa527fc64",
      "tree": "aad5f208f132ef21f016d670270eeb3610d0c96a",
      "parents": [
        "a6d9990fba38022073b0f1c1b156f16a4fe2dffd",
        "0dd750349004579ca3356a155eb8a86994a45df2"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Feb 04 13:17:16 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 04 13:17:16 2013 -0800"
      },
      "message": "am 0dd75034: am d4f5ce03: am 6dfb4d0a: am 5c37151c: am e75cd4bf: docs: add hdf bool for deviste, used to change aspects of the templates\n\n# Via Android Git Automerger (4) and Scott Main (1)\n* commit \u00270dd750349004579ca3356a155eb8a86994a45df2\u0027:\n  docs: add hdf bool for deviste, used to change aspects of the templates\n"
    },
    {
      "commit": "3256aeed5fc85a1bfcaf5c9a6236519b96e908af",
      "tree": "bc66f867c200c63a694c5319765ec160f095f3a2",
      "parents": [
        "db911cf4098213777e738b05995f26833a9f493c",
        "61101eee367be6f3bae5974b05c4c3ae912bddaa"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Mon Feb 04 13:17:08 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 04 13:17:08 2013 -0800"
      },
      "message": "am 61101eee: am e27f64b0: am 1417357e: am f8a9c509: am 7b32d32b: Merge \"Add build rule for ds (devsite) online docs.\" into jb-mr1-dev\n\n# Via Android Git Automerger (4) and others\n* commit \u002761101eee367be6f3bae5974b05c4c3ae912bddaa\u0027:\n  Add build rule for ds (devsite) online docs.\n"
    },
    {
      "commit": "65fd9811d3b00698ab25233543c2e49ef22c634b",
      "tree": "95149376e52a2001fffd660f21f6aa1a886d26c7",
      "parents": [
        "01084b96a15885698d602ee563dc8e18bf52acfa",
        "2aa47b336227a5d2bd1ee91f8fb4bd84be7e97f0"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Fri Feb 01 13:28:08 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 01 13:28:08 2013 -0800"
      },
      "message": "am 2aa47b33: Merge \"Doc change: remove htmlified samples from docs build for now. Samples are still downloadable thorugh SDK Manager.\" into jb-mr1-dev\n\n# Via Android (Google) Code Review (1) and Dirk Dougherty (1)\n* commit \u00272aa47b336227a5d2bd1ee91f8fb4bd84be7e97f0\u0027:\n  Doc change: remove htmlified samples from docs build for now. Samples are still downloadable thorugh SDK Manager.\n"
    },
    {
      "commit": "1e7e1104c422d89393565bba591479c1ccbae06d",
      "tree": "a257123fafeb3db0a4ef4a74ac10dfffdadddb92",
      "parents": [
        "5c37151cb07519affba8e20018e0f0069d426527",
        "4b7161cbd44f64537d2c661e87868ea2689dd126"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Feb 01 13:28:01 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 01 13:28:01 2013 -0800"
      },
      "message": "am 4b7161cb: docs: switch devsite doc build to use templates-sdk\n\n# Via Scott Main\n* commit \u00274b7161cbd44f64537d2c661e87868ea2689dd126\u0027:\n  docs: switch devsite doc build to use templates-sdk\n"
    },
    {
      "commit": "5c37151cb07519affba8e20018e0f0069d426527",
      "tree": "85a8cd5bd6a146de0f7af005602741b09be32a18",
      "parents": [
        "68d0f32c09063e4ede569e84f8726dc1e96ab044",
        "e75cd4bfd176fbb1483ec5e17edfbd993adce40f"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Feb 01 13:27:57 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 01 13:27:57 2013 -0800"
      },
      "message": "am e75cd4bf: docs: add hdf bool for deviste, used to change aspects of the templates\n\n# Via Scott Main\n* commit \u0027e75cd4bfd176fbb1483ec5e17edfbd993adce40f\u0027:\n  docs: add hdf bool for deviste, used to change aspects of the templates\n"
    },
    {
      "commit": "f8a9c5090c7b9e4cfd27bf65093939381746e638",
      "tree": "413e144dc9a38b3bfe6387ee64bcf4de586c0cc9",
      "parents": [
        "d6e176c807d503beb1241ba73355a73ceca47e3e",
        "7b32d32bd38b423dd141e7ead89205b9b7929497"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Fri Feb 01 13:27:48 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 01 13:27:48 2013 -0800"
      },
      "message": "am 7b32d32b: Merge \"Add build rule for ds (devsite) online docs.\" into jb-mr1-dev\n\n# Via Android (Google) Code Review (1) and Dirk Dougherty (1)\n* commit \u00277b32d32bd38b423dd141e7ead89205b9b7929497\u0027:\n  Add build rule for ds (devsite) online docs.\n"
    },
    {
      "commit": "2aa47b336227a5d2bd1ee91f8fb4bd84be7e97f0",
      "tree": "a3da70af0a1516cd0d8cea0d7d9cd96e7a3b0b35",
      "parents": [
        "3b4b067baec59207640d534be86c7c6c12b06678",
        "9cab5c01168ed96e718fa80e9dd05e04c5d3678c"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Tue Jan 29 23:40:00 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 29 23:40:01 2013 +0000"
      },
      "message": "Merge \"Doc change: remove htmlified samples from docs build for now. Samples are still downloadable thorugh SDK Manager.\" into jb-mr1-dev"
    },
    {
      "commit": "9cab5c01168ed96e718fa80e9dd05e04c5d3678c",
      "tree": "25487fb1c29f96789c5c622958d1efa0e3cc13f9",
      "parents": [
        "e75cd4bfd176fbb1483ec5e17edfbd993adce40f"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Tue Jan 29 15:00:04 2013 -0800"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Tue Jan 29 15:21:20 2013 -0800"
      },
      "message": "Doc change: remove htmlified samples from docs build for now. Samples are still downloadable thorugh SDK Manager.\n\nChange-Id: I9cfa53e605f476daf6cf914f256df600e1d77f89\n"
    },
    {
      "commit": "4b7161cbd44f64537d2c661e87868ea2689dd126",
      "tree": "30fe4bd859cde4f5724f6182620278d582b95e57",
      "parents": [
        "e75cd4bfd176fbb1483ec5e17edfbd993adce40f"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Tue Jan 29 14:20:13 2013 -0800"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Tue Jan 29 14:20:13 2013 -0800"
      },
      "message": "docs: switch devsite doc build to use templates-sdk\n\nChange-Id: I933cbafa0712de47b4bcf72d2a7c4f99bf18f930\n"
    },
    {
      "commit": "e75cd4bfd176fbb1483ec5e17edfbd993adce40f",
      "tree": "14af677f817ffea8262c3c498abdf883b408d2c2",
      "parents": [
        "48f9f83ba27bf3a5cac224e30821836b3956c87c"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Tue Jan 29 08:29:40 2013 -0800"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Tue Jan 29 08:29:40 2013 -0800"
      },
      "message": "docs: add hdf bool for deviste, used to change aspects of the templates\n\nChange-Id: I6ad24252f10211a88d1f98e356bc9da97442f91c\n"
    },
    {
      "commit": "d0fd54648ca6249f56cf469c57181b5a7bbb71d0",
      "tree": "4c710f5a98e913d87290a312b89a46370847ed60",
      "parents": [
        "5924dc4d7a42d04011d2e67aa3f9e28b7d940681",
        "80943d8daa6ab31ab5c486d57aea406aa0730d58"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jan 29 03:16:40 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 29 03:16:40 2013 +0000"
      },
      "message": "Merge \"Adding UI test automation APIs.\""
    },
    {
      "commit": "289ad99c17bd4eda0d2c153732e755a8a956609e",
      "tree": "0a4f35579ebc64ce256de5f9eee572d548134abf",
      "parents": [
        "df9fa4c602e986495fe8795fb800858b48693040"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Mon Jan 28 15:43:49 2013 -0800"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Mon Jan 28 15:43:49 2013 -0800"
      },
      "message": "Add build rule for ds (devsite) online docs.\n\nChange-Id: I4f1d099995402613f58401a506ba272abfb563ba\n"
    },
    {
      "commit": "cbb2a2a207796a68eff26be001af2797594d3b3c",
      "tree": "ae7d166136064ba408035fa741bb944441fddb47",
      "parents": [
        "29e4aa7abe6b0c62f31fb23b8572cd5b91f08f5c"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Mon Jan 28 15:27:47 2013 -0800"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Mon Jan 28 15:27:47 2013 -0800"
      },
      "message": "Delete frameworks/base/voip use voip-common from frameworks/opt/net/voip\n\nChange-Id: Ieaba759a0f69b45c4b8839cbed1fe757cdf190c5\n"
    },
    {
      "commit": "80943d8daa6ab31ab5c486d57aea406aa0730d58",
      "tree": "cb7738eff465941484aac3eb6ba15ba365aea576",
      "parents": [
        "64cae1a608c196c2bd1d9e7cfd2a1632fd0e5b83"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jan 02 10:25:37 2013 -0800"
      },
      "committer": {
        "name": "Svetoslav",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jan 22 17:56:53 2013 -0800"
      },
      "message": "Adding UI test automation APIs.\n\nThis change adds APIs support for implementing UI tests. Such tests do\nnot rely on internal application structure and can span across application\nboundaries. UI automation APIs are encapsulated in the UiAutomation object\nthat is provided by an Instrumentation object. It is initialized by the\nsystem and can be used for both introspecting the screen and performing\ninteractions simulating a user. UI test are normal instrumentation tests\nand are executed on the device.\n\nUiAutomation uses the accessibility APIs to introspect the screen and\na special delegate object to perform privileged operations such as\ninjecting input events. Since instrumentation tests are invoked by a shell\ncommand, the shell program launching the tests creates a delegate object and\npasses it as an argument to started instrumentation. This delegate\nallows the APK that runs the tests to access some privileged operations\nprotected by a signature level permissions which are explicitly granted\nto the shell user.\n\nThe UiAutomation object also supports running tests in the legacy way\nwhere the tests are run as a Java shell program. This enables existing\nUiAutomator tests to keep working while the new ones should be implemented\nusing the new APIs. The UiAutomation object exposes lower level APIs which\nallow simulation of arbitrary user interactions and writing complete UI test\ncases. Clients, such as UiAutomator, are encouraged to implement higher-\nlevel APIs which minimize development effort and can be used as a helper\nlibrary by the test developer.\n\nThe benefit of this change is decoupling UiAutomator from the system\nsince the former was calling hidden APIs which required that it is\nbundled in the system image. This prevented UiAutomator from being\nevolved separately from the system. Also UiAutomator was creating\nadditional API surface in the system image. Another benefit of the new\ndesign is that now test cases have access to a context and can use\npublic platform APIs in addition to the UiAutomator ones. Further,\nthird-parties can develop their own higher level test APIs on top\nof the lower level ones exposes by UiAutomation.\n\nbug:8028258\n\nAlso this change adds the fully qualified resource name of the view\u0027s\nid in the emitted AccessibilityNodeInfo if a special flag is set while\nconfiguring the accessibility service. Also added is API for looking\nup node infos by this id. The id resource name is relatively more stable\ncompared to the generaed id number which may change from one build to\nanother. This API facilitate reuing the already defined ids for UI\nautomation.\n\nbug:7678973\n\nChange-Id: I589ad14790320dec8a33095953926c2a2dd0228b\n"
    },
    {
      "commit": "ca6486e7f579fa885b6213513f26ce2ca49f873b",
      "tree": "2bd8579677f10c991538b1dd3ab9dea656b1dff2",
      "parents": [
        "707a71e39e8e3bf284422265b680b73a7c63debf"
      ],
      "author": {
        "name": "Sasha Levitskiy",
        "email": "sanek@google.com",
        "time": "Mon Jan 14 16:59:33 2013 -0800"
      },
      "committer": {
        "name": "Sasha Levitskiy",
        "email": "sanek@google.com",
        "time": "Mon Jan 14 16:59:33 2013 -0800"
      },
      "message": "Removed Throttle Manager as obsolete\n\nChange-Id: I63e8514f34c880d0badaab33a347f54a80c84da6\n"
    },
    {
      "commit": "a06de0f29b58df9246779cc4bfd8f06f7205ddb6",
      "tree": "c8ecd3323c1112dd46a9470600eab5df022ca85c",
      "parents": [
        "2e9f65f978397d112dbfb134d374588515bb644a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Dec 11 16:34:47 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 09 12:47:47 2013 -0800"
      },
      "message": "New \"app ops\" service.\n\nInitial implementation, tracking use of the vibrator, GPS,\nand location reports.\n\nAlso includes an update to battery stats to also keep track of\nvibrator usage (since I had to be in the vibrator code anyway\nto instrument it).\n\nThe service itself is only half-done.  Currently no API to\nretrieve the data (which once there will allow us to show you\nwhich apps are currently causing the GPS to run and who has\nrecently accessed your location), it doesn\u0027t persist its data\nlike it should, and no way to tell it to reject app requests\nfor various operations.\n\nBut hey, it\u0027s a start!\n\nChange-Id: I05b8d76cc4a4f7f37bc758c1701f51f9e0550e15\n"
    },
    {
      "commit": "545252f4fde6fbb70b07e97a120c7d1405758017",
      "tree": "e3238e5262e77cd91751c2302c30d828c539c55c",
      "parents": [
        "224333c03f1a9e14fce09207dc15d06365bf917b"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Dec 10 18:29:24 2012 -0800"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Dec 14 16:27:27 2012 -0800"
      },
      "message": "Refactoring of the screen magnification feature.\n\n1. This patch takes care of the case where a magnified window is covering an unmagnigied\n   one. One example is a dialog that covers the IME window.\n\nbug:7634430\n\n2. Ensuring that the UI automator tool can connect and correctly dump the screen.\n\nbug:7694696\n\n3. Removed the partial implementation for multi display magnification. It adds\n   unnecessary complexity since it cannot be implemented without support for\n   input from multiple screens. We will revisit when necessary.\n\n4. Moved the magnified border window as a surface in the window manager.\n\n5. Moved the mediator APIs on the window manager and the policy methods on the\n   WindowManagerPolicy.\n\n6. Implemented batch event processing for the accessibility input filter.\n\nChange-Id: I4ebf68b94fb07201e124794f69611ece388ec116\n"
    },
    {
      "commit": "f74f0deb298550307677c1abd27202e3debd02eb",
      "tree": "a89d1f97e0bb13a7c264c2b7d041558a61bfaa7d",
      "parents": [
        "39ec1ec187c3b27f2819aaf5a3a47819af56e44d"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Dec 04 15:12:49 2012 -0800"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Dec 04 15:12:49 2012 -0800"
      },
      "message": "Move numeric api files from frameworks/base to prebuilts/sdk\n\nSo they can be used in unbundled builds.\n\nBug: 7296240\n\nChange-Id: Ib0ba88387cb45ff795a4e8e3a836cf670d5016b7\n"
    },
    {
      "commit": "152e9bb81aa5b2ab4637f4b2dae04b3ce89fa891",
      "tree": "8e955c6db3279776dc6795e125513c4f2877ea44",
      "parents": [
        "4d58730ff587645778636e87312b1b17846fcac9"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Oct 12 20:15:29 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Dec 03 10:38:48 2012 -0800"
      },
      "message": "Refactoring of the screen magnification feature.\n\n1. The screen magnification feature was implemented entirely as a part of the accessibility\n   manager. To achieve that the window manager had to implement a bunch of hooks for an\n   external client to observe its internal state. This was problematic since it dilutes\n   the window manager interface and allows code that is deeply coupled with the window\n   manager to reside outside of it. Also the observer callbacks were IPCs which cannot\n   be called with the window manager\u0027s lock held. To avoid that the window manager had\n   to post messages requesting notification of interested parties which makes the code\n   consuming the callbacks to run asynchronously of the window manager. This causes timing\n   issues and adds unnecessary complexity.\n\n   Now the magnification logic is split in two halves. The first half that is responsible\n   to track the magnified portion of the screen and serve as a policy which windows can be\n   magnified and it is a part of the window manager. This part exposes higher level APIs\n   allowing interested parties with the right permissions to control the magnification\n   of a given display. The APIs also allow a client to be registered for callbacks on\n   interesting changes such as resize of the magnified region, etc. This part servers\n   as a mediator between magnification controllers and the window manager.\n\n   The second half is a controller that is responsible to drive the magnification\n   state based on touch interactions. It also presents a highlight when magnified to\n   suggest the magnified potion of the screen. The controller is responsible for auto\n   zooming out in case the user context changes - rotation, new actitivity. The controller\n   also auto pans if a dialog appears and it does not interesect the magnified frame.\n\nbug:7410464\n\n2. By design screen magnification and touch exploration work separately and together. If\n   magnification is enabled the user sees a larger version of the widgets and a sub section\n   of the screen content. Accessibility services use the introspection APIs to \"see\" what\n   is on the screen so they can speak it, navigate to the next item in response to a\n   gesture, etc. Hence, the information returned to accessibility services has to reflect\n   what a sighted user would see on the screen. Therefore, if the screen is magnified\n   we need to adjust the bounds and position of the infos describing views in a magnified\n   window such that the info bounds are equivalent to what the user sees.\n\n   To improve performance we keep accessibility node info caches in the client process.\n   However, when magnification state changes we have to clear these caches since the\n   bounds of the cached infos no longer reflect the screen content which just got smaller\n   or larger.\n\n   This patch propagates not only the window scale as before but also the X/Y pan and the\n   bounds of the magnified portion of the screen to the introspected app. This information\n   is used to adjust the bounds of the node infos coming from this window such that the\n   reported bounds are the same as the user sees not as the app thinks they are. Note that\n   if magnification is enabled we zoom the content and pan it along the X and Y axis. Also\n   recomputed is the isVisibleToUser property of the reported info since in a magnified\n   state the user sees a subset of the window content and the views not in the magnified\n   viewport should be reported as not visible to the user.\n\nbug:7344059\n\nChange-Id: I6f7832c7a6a65c5368b390eb1f1518d0c7afd7d2\n"
    },
    {
      "commit": "aeb3751559dc6a8ed71a9463700941303cf44ba0",
      "tree": "23b68899cfdf803e673339edf166775223df250f",
      "parents": [
        "38ddedc8adfc4d58f4bebe4a51149e4768d42f70",
        "9cd8c711a7ed0690e268fc930e6f8d0d594c17e5"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Nov 30 10:05:20 2012 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Fri Nov 30 10:05:20 2012 -0800"
      },
      "message": "resolved conflicts for merge of 9cd8c711 to master\n\nChange-Id: I5e2d13c44f6a0589648e5934c8c36790da85e828\n"
    },
    {
      "commit": "1b86d75d312996133bc0c74fcb1f2c9f2a83fba0",
      "tree": "2ca0db119fb2d3644a919ac66642cba8f775a71f",
      "parents": [
        "71175f727bc1e094e72a410aca62392badffbf11"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu Nov 29 11:05:42 2012 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu Nov 29 12:52:51 2012 -0800"
      },
      "message": "Remove unused IExtendedNetworkService\n\nIt was used in the cupcake era for docomo.  Is not used anymore.\n\nBug 7633569\n\nChange-Id: I2ec826fc9a70d261a340957a937ed4c9f8e67c5c\n"
    },
    {
      "commit": "b2e14e0081202acb1462f1bb2058a245a2b6550a",
      "tree": "f37c81f9363a1fa6031608800619dadc267f0c3c",
      "parents": [
        "c30a8eae5ae5341c44c4f785b2e13ab458f5f22a"
      ],
      "author": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Oct 09 11:12:32 2012 -0700"
      },
      "committer": {
        "name": "Robert Ly",
        "email": "robertly@google.com",
        "time": "Tue Oct 09 11:22:44 2012 -0700"
      },
      "message": "update pdk docs build target\n\nChange-Id: Ic7ecbc8cf582460112d63d365c0cfb824478fff1\n"
    },
    {
      "commit": "ea7e44f91b4855cce408911a8f943c66239a3489",
      "tree": "5f3a2962cf18db010c527c844548b6826739f35c",
      "parents": [
        "a59dc5ad25180eb93bf5747d986ea580803470a8",
        "33a436da507e77d5c106f8ffe5dea07f429cf270"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Fri Sep 28 16:01:43 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 28 16:01:44 2012 -0700"
      },
      "message": "Merge \"Run doc-comment-check only for checkbuild.\""
    },
    {
      "commit": "33a436da507e77d5c106f8ffe5dea07f429cf270",
      "tree": "2084fd3502c29c12aaea0b7990090c7f54eaedfb",
      "parents": [
        "5827b5f7b07bbdd53b53ba1494b93dad3761851e"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Thu Sep 27 17:09:53 2012 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Fri Sep 28 15:04:52 2012 -0700"
      },
      "message": "Run doc-comment-check only for checkbuild.\n\nCurrently doc-comment-check is the single longest-running process during\nthe make process. It usually takes 300-400s to finish on my Z600.\nWhat\u0027s worse, it\u0027s usually the last straggler build job.\nNot running this by default can save big build time.\n\nBug: 7253452\nChange-Id: Idc868197b59e42c6b583c66f13a0e6a1bc8d5d4e\n"
    },
    {
      "commit": "20828c1b3d3d21414a90195e7d12bfa42fdfb145",
      "tree": "1d48bda9ed09b4bdc44831f1b905f61d8f823181",
      "parents": [
        "7ed9bf58fab78776f0f80cfc90b217e4d109ef62",
        "43a903c763916dccdd4052037cf64774eeb7582a"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Sep 28 13:07:05 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 28 13:07:05 2012 -0700"
      },
      "message": "am 43a903c7: am 053644db: Merge \"add api level 17 to javadoc filter and update version number\" into jb-mr1-dev\n\n* commit \u002743a903c763916dccdd4052037cf64774eeb7582a\u0027:\n  add api level 17 to javadoc filter and update version number\n"
    }
  ],
  "next": "1134de0f1223d93f84b4475e74e934f1bd68f634"
}
