Commit Graph

33772 Commits

Author SHA1 Message Date
Jake Hamby
dc128f220b am ee60f3fb: resolved conflicts for merge of 18cc814c to honeycomb-plus-aosp
* commit 'ee60f3fb1b4e61ac8027293a658ba710e36d36b6':
  Enable support for SMS national language shift tables.
2011-05-11 13:09:42 -07:00
Eric Fischer
99c8ce8275 am 6819c677: (-s ours) am 98041f02: am 270fbfed: am 37259203: (-s ours) Merge "Import revised translations. DO NOT MERGE" into honeycomb-mr1
* commit '6819c677b9d8d9a5f60f1a35e045300b1a8aec96':
  Import revised translations.  DO NOT MERGE
2011-05-11 13:09:13 -07:00
Eric Fischer
c8281fdf00 am ca43ef6b: (-s ours) am affca8fa: am f3bd663c: Merge "Import revised translations. DO NOT MERGE" into honeycomb-mr2
* commit 'ca43ef6bc7ea52efb17718017e1f883e33504c05':
  Import revised translations.  DO NOT MERGE
2011-05-11 13:08:50 -07:00
Joe Onorato
5354504ec4 am 0fe56853: am 37c077d3: am 81faa44c: Merge "Move / copy some framework and systemui resources from xlarge to large. The status bar now comes up on large tablets." into honeycomb-mr2
* commit '0fe56853fd88c34aba37b04be256a0e51c1bbff7':
  Move / copy some framework and systemui resources from xlarge to large.  The status bar now comes up on large tablets.
2011-05-11 13:07:55 -07:00
Robert Greenwalt
55a018e918 am 441bc9a6: am e6848fac: Merge "Fix the adding of host routes." into honeycomb-LTE
* commit '441bc9a6f41ca1678a6c965bec7e2f18227ac100':
  Fix the adding of host routes.
2011-05-11 13:07:38 -07:00
Christopher Tate
7d31ba319d Merge "Full local backup infrastructure" 2011-05-11 12:51:31 -07:00
Dianne Hackborn
6c15faf98e Merge "resolved conflicts for merge of 037b54cf to master" 2011-05-11 12:50:39 -07:00
Dianne Hackborn
0b9be697bf resolved conflicts for merge of 037b54cf to master
Change-Id: I1bc2827596a349963d8aa2b63b3f7801f155668a
2011-05-11 10:59:54 -07:00
Daniel Sandler
7355f6c128 Merge changes I21e9629e,I535ed3ba
* changes:
  Create an XML config flag to turn the navbar off.
  It's lights out for you, navigation bar!
2011-05-11 09:31:08 -07:00
Andreas Huber
a3d8f5f18e Merge "Leave the number of output buffers up to surface flinger and friends." 2011-05-11 08:11:11 -07:00
Andreas Huber
4e0e61ea62 Merge "Make sure the ogg extractor returns appropriate error codes." 2011-05-11 08:10:42 -07:00
Guang Zhu
8b7010f9f6 Merge "add more logging into DRT" 2011-05-10 19:15:59 -07:00
Christopher Tate
d78797f6e6 Full local backup infrastructure
This is the basic infrastructure for pulling a full(*) backup of the
device's data over an adb(**) connection to the local device.  The
basic process consists of these interacting pieces:

1. The framework's BackupManagerService, which coordinates the
   collection of app data and routing to the destination.

2. A new framework-provided BackupAgent implementation called
   FullBackupAgent, which is instantiated in the target applications'
   processes in turn, and knows how to emit a datastream that contains
   all of the app's saved data files.

3. A new shell-level program called "bu" that is used to bridge from
   adb to the framework's Backup Manager.

4. adb itself, which now knows how to use 'bu' to kick off a backup
   operation and pull the resulting data stream to the desktop host.

5. A system-provided application that verifies with the user that
   an attempted backup/restore operation is in fact expected and to
   be allowed.

The full agent implementation is not used during normal operation of
the delta-based app-customized remote backup process.  Instead it's
used during user-confirmed *full* backup of applications and all their
data to a local destination, e.g. via the adb connection.

The output format is 'tar'.  This makes it very easy for the end
user to examine the resulting dataset, e.g. for purpose of extracting
files for debug purposes; as well as making it easy to contemplate
adding things like a direct gzip stage to the data pipeline during
backup/restore.  It also makes it convenient to construct and maintain
synthetic backup datasets for testing purposes.

Within the tar format, certain artificial conventions are used.
All files are stored within top-level directories according to
their semantic origin:

apps/pkgname/a/  : Application .apk file itself
apps/pkgname/obb/: The application's associated .obb containers
apps/pkgname/f/  : The subtree rooted at the getFilesDir() location
apps/pkgname/db/ : The subtree rooted at the getDatabasePath() parent
apps/pkgname/sp/ : The subtree rooted at the getSharedPrefsFile() parent
apps/pkgname/r/  : Files stored relative to the root of the app's file tree
apps/pkgname/c/  : Reserved for the app's getCacheDir() tree; not stored.

For each package, the first entry in the tar stream is a file called
"_manifest", nominally rooted at apps/pkgname.  This file contains some
metadata about the package whose data is stored in the archive.

The contents of shared storage can optionally be included in the tar
stream. It is placed in the synthetic location:

shared/...

uid/gid are ignored; app uids are assigned at install time, and the
app's data is handled from within its own execution environment, so
will automatically have the app's correct uid.

Forward-locked .apk files are never backed up.  System-partition
.apk files are not backed up unless they have been overridden by a
post-factory upgrade, in which case the current .apk *is* backed up --
i.e. the .apk that matches the on-disk data.  The manifest preceding
each application's portion of the tar stream provides version numbers
and signature blocks for version checking, as well as an indication
of whether the restore logic should expect to install the .apk before
extracting the data.

System packages can designate their own full backup agents.  This is
to manage things like the settings provider which (a) cannot be shut
down on the fly in order to do a clean snapshot of their file trees,
and (b) manage data that is not only irrelevant but actively hostile
to non-identical devices -- CDMA telephony settings would seriously
mess up a GSM device if emplaced there blind, for example.

When a full backup or restore is initiated from adb, the system will
present a confirmation UI that the user must explicitly respond to
within a short [~ 30 seconds] timeout.  This is to avoid the
possibility of malicious desktop-side software secretly grabbing a copy
of all the user's data for nefarious purposes.

(*) The backup is not strictly a full mirror.  In particular, the
    settings database is not cloned; it is handled the same way that
    it is in cloud backup/restore.  This is because some settings
    are actively destructive if cloned onto a different (or
    especially a different-model) device: telephony settings and
    AndroidID are good examples of this.

(**) On the framework side it doesn't care that it's adb; it just
    sends the tar stream to a file descriptor.  This can easily be
    retargeted around whatever transport we might decide to use
    in the future.

KNOWN ISSUES:

* the security UI is desperately ugly; no proper designs have yet
  been done for it
* restore is not yet implemented
* shared storage backup is not yet implemented
* symlinks aren't yet handled, though some infrastructure for
  dealing with them has been put in place.

Change-Id: Ia8347611e23b398af36ea22c36dff0a276b1ce91
2011-05-10 17:52:51 -07:00
Daisuke Miyakawa
d109905363 Merge "Remove an unnecessary word from javadoc" 2011-05-10 17:41:44 -07:00
Jason Sams
b5a7bf08b7 Merge "Add code for generating fifo command packing." 2011-05-10 16:46:35 -07:00
Jake Hamby
49b2ebe8b3 resolved conflicts for merge of 18cc814c to honeycomb-plus-aosp
Change-Id: I2b569ada3baec2dc486296623063bc2b504c5e96
2011-05-10 15:52:15 -07:00
Amith Yamasani
57a6cd6244 Merge "Use canonical paths to compare library directory with data directory." 2011-05-10 15:36:45 -07:00
Eric Fischer
eb03b6a1f4 am 98041f02: am 270fbfed: am 37259203: (-s ours) Merge "Import revised translations. DO NOT MERGE" into honeycomb-mr1
* commit '98041f02b471b100056c3dc16e50f04a059f9a58':
  Import revised translations.  DO NOT MERGE
2011-05-10 14:27:23 -07:00
Eric Fischer
60490cc70a am 270fbfed: am 37259203: (-s ours) Merge "Import revised translations. DO NOT MERGE" into honeycomb-mr1
* commit '270fbfede58e4971588755adfa7e70e0de07b8cf':
  Import revised translations.  DO NOT MERGE
2011-05-10 14:23:46 -07:00
Eric Fischer
bfa17d2e4a am 37259203: (-s ours) Merge "Import revised translations. DO NOT MERGE" into honeycomb-mr1
* commit '372592032a0e552ca30faadac9be823bd397910b':
  Import revised translations.  DO NOT MERGE
2011-05-10 14:21:08 -07:00
Eric Fischer
228a3092a5 Merge "Import revised translations. DO NOT MERGE" into honeycomb-mr1 2011-05-10 14:18:10 -07:00
Andreas Huber
1a7448dfc0 Merge "Properly honour any pending seek request when reading the first buffer after" 2011-05-10 14:12:06 -07:00
Eric Fischer
48a4ba5779 am affca8fa: am f3bd663c: Merge "Import revised translations. DO NOT MERGE" into honeycomb-mr2
* commit 'affca8fa11aa731cdc8b4b4f2b5478f182b9fbbf':
  Import revised translations.  DO NOT MERGE
2011-05-10 12:26:09 -07:00
Eric Fischer
04de9afdc5 am f3bd663c: Merge "Import revised translations. DO NOT MERGE" into honeycomb-mr2
* commit 'f3bd663c67fe3aa3e8ec728e90f19e3fa50c3fbd':
  Import revised translations.  DO NOT MERGE
2011-05-10 12:21:32 -07:00
Eric Fischer
e320ebe0ff Merge "Import revised translations. DO NOT MERGE" into honeycomb-mr2 2011-05-10 12:18:21 -07:00
Joe Onorato
1a32a0db38 am 37c077d3: am 81faa44c: Merge "Move / copy some framework and systemui resources from xlarge to large. The status bar now comes up on large tablets." into honeycomb-mr2
* commit '37c077d3dc32cd42c145072b671a6d53563b0156':
  Move / copy some framework and systemui resources from xlarge to large.  The status bar now comes up on large tablets.
2011-05-10 12:03:55 -07:00
Joe Onorato
a5c5ef11bb am 81faa44c: Merge "Move / copy some framework and systemui resources from xlarge to large. The status bar now comes up on large tablets." into honeycomb-mr2
* commit '81faa44c48911e4a63adaa1c92c5a40ea3c58ffb':
  Move / copy some framework and systemui resources from xlarge to large.  The status bar now comes up on large tablets.
2011-05-10 12:01:40 -07:00
Joe Onorato
817262a8d9 Merge "Move / copy some framework and systemui resources from xlarge to large. The status bar now comes up on large tablets." into honeycomb-mr2 2011-05-10 11:59:42 -07:00
Robert Greenwalt
10bfd9d59a am e6848fac: Merge "Fix the adding of host routes." into honeycomb-LTE
* commit 'e6848faceff58f84f671dbc73be08ef7890fea09':
  Fix the adding of host routes.
2011-05-10 11:53:57 -07:00
Robert Greenwalt
9ae2705075 Merge "Fix the adding of host routes." into honeycomb-LTE 2011-05-10 11:51:36 -07:00
Dirk Dougherty
599ce46f2b am 63c5a2bc: am e4e8dffd: am 0d5196b9: am 5f8f0a0d: Merge "Doc change: add Android 3.1 highlights and version notes." into honeycomb-mr1
* commit '63c5a2bc39839804442ba2800b6d974d0391f2cc':
  Doc change: add Android 3.1 highlights and version notes.
2011-05-10 11:15:54 -07:00
Scott Main
42ebfe76cc am 315595d1: am 6b2c8f00: am fef7b625: am 7f3cf449: Merge "docs: update screen support doc to de-emphasize support for 1.5 this includes a variety of other revisions to reorganize some of the content in the main document and also add separate documents for how to enab
* commit '315595d10dfd4b8fe32cfe45a53f9e342bf0a699':
  docs: update screen support doc to de-emphasize support for 1.5 this includes a variety of other revisions to reorganize some of the content in the main document and also add separate documents for how to enable screen filtering and add screen support on 1.5
2011-05-10 11:15:51 -07:00
Dianne Hackborn
a1f89099d8 am 652dbb7d: am 837bdc49: Merge "Fix scaling of batched motion events." into honeycomb-mr2
* commit '652dbb7dca84ee3b350225cb38824fe3773af42b':
  Fix scaling of batched motion events.
2011-05-10 11:15:39 -07:00
Wink Saville
8cdd65245b am d649887a: am eb8da0fe: Merge "Fix issue on infinite retry config in RetryManager" into honeycomb-LTE
* commit 'd649887a43efb435f1ea2255c364d8c214552aef':
  Fix issue on infinite retry config in RetryManager
2011-05-10 11:15:25 -07:00
Wink Saville
c2d3ee74fe am d1736a3d: am d237bcb2: Merge "Add unset and setOnIccRefresh." into honeycomb-LTE
* commit 'd1736a3ddae04f5cbe4ebc0ba31e605b6bdae72c':
  Add unset and setOnIccRefresh.
2011-05-10 11:14:51 -07:00
Dianne Hackborn
edd292f8ce am 837bdc49: Merge "Fix scaling of batched motion events." into honeycomb-mr2
* commit '837bdc4919aedfea8c0ba492d964eb921d4e302d':
  Fix scaling of batched motion events.
2011-05-10 11:01:50 -07:00
Dianne Hackborn
c3d5cb6980 Merge "resolved conflicts for merge of 05be6d6f to master" 2011-05-10 10:59:29 -07:00
Dianne Hackborn
9467d6c805 Merge "Fix scaling of batched motion events." into honeycomb-mr2 2011-05-10 10:58:44 -07:00
Kristian Monsen
284797a189 Merge "Deprecating webkit API's that might not be supported in the future" 2011-05-10 10:57:52 -07:00
Wink Saville
5cd40c7d31 Merge "Add unset and setOnIccRefresh." 2011-05-10 10:25:46 -07:00
Dirk Dougherty
aec65a327e am e4e8dffd: am 0d5196b9: am 5f8f0a0d: Merge "Doc change: add Android 3.1 highlights and version notes." into honeycomb-mr1
* commit 'e4e8dffd41c0f7aaf005418b71cae7738ad868d2':
  Doc change: add Android 3.1 highlights and version notes.
2011-05-10 00:46:26 -07:00
Scott Main
8fcfae410e am 6b2c8f00: am fef7b625: am 7f3cf449: Merge "docs: update screen support doc to de-emphasize support for 1.5 this includes a variety of other revisions to reorganize some of the content in the main document and also add separate documents for how to enable screen fil
* commit '6b2c8f00c95d05a8ca410ff74451fd0701f36119':
  docs: update screen support doc to de-emphasize support for 1.5 this includes a variety of other revisions to reorganize some of the content in the main document and also add separate documents for how to enable screen filtering and add screen support on 1.5
2011-05-10 00:46:21 -07:00
Dirk Dougherty
a14345a16e am 0d5196b9: am 5f8f0a0d: Merge "Doc change: add Android 3.1 highlights and version notes." into honeycomb-mr1
* commit '0d5196b972044da44a844acd9cdffde9d5aa696d':
  Doc change: add Android 3.1 highlights and version notes.
2011-05-10 00:37:02 -07:00
Scott Main
c60dbd0f3c am fef7b625: am 7f3cf449: Merge "docs: update screen support doc to de-emphasize support for 1.5 this includes a variety of other revisions to reorganize some of the content in the main document and also add separate documents for how to enable screen filtering and ad
* commit 'fef7b62506a74d0133b60fd1d6ae9bf54bf599c9':
  docs: update screen support doc to de-emphasize support for 1.5 this includes a variety of other revisions to reorganize some of the content in the main document and also add separate documents for how to enable screen filtering and add screen support on 1.5
2011-05-10 00:36:59 -07:00
Dirk Dougherty
296d68f8aa am 5f8f0a0d: Merge "Doc change: add Android 3.1 highlights and version notes." into honeycomb-mr1
* commit '5f8f0a0d40675bc4d373121ffdd22730f3701662':
  Doc change: add Android 3.1 highlights and version notes.
2011-05-10 00:34:09 -07:00
Scott Main
bdc375c34f am 7f3cf449: Merge "docs: update screen support doc to de-emphasize support for 1.5 this includes a variety of other revisions to reorganize some of the content in the main document and also add separate documents for how to enable screen filtering and add screen supp
* commit '7f3cf449fe1b90b902a37ddc3c05ec7aa236e584':
  docs: update screen support doc to de-emphasize support for 1.5 this includes a variety of other revisions to reorganize some of the content in the main document and also add separate documents for how to enable screen filtering and add screen support on 1.5
2011-05-10 00:34:06 -07:00
Dirk Dougherty
7220d3cca5 Merge "Doc change: add Android 3.1 highlights and version notes." into honeycomb-mr1 2011-05-09 22:58:37 -07:00
Wink Saville
f6a24584f0 am eb8da0fe: Merge "Fix issue on infinite retry config in RetryManager" into honeycomb-LTE
* commit 'eb8da0fec2ea577f14e5c5c4dcca1eea0b8261fc':
  Fix issue on infinite retry config in RetryManager
2011-05-09 20:34:24 -07:00
Wink Saville
fd3883f0ad am d237bcb2: Merge "Add unset and setOnIccRefresh." into honeycomb-LTE
* commit 'd237bcb241b2be8b2f3f3baed87fce973de00fa7':
  Add unset and setOnIccRefresh.
2011-05-09 20:32:34 -07:00
Wink Saville
0248bcfec4 Merge "Fix issue on infinite retry config in RetryManager" into honeycomb-LTE 2011-05-09 20:31:45 -07:00