5113 Commits

Author SHA1 Message Date
Christopher Tate
a858cb075d Respect android:allowBackup="false" during full backup & restore
Packages with this manifest attribute set 'false' will not be backed
up even through the "full device backup" infrastructure.  If someone
produces an apparent restore file with data for such an application,
it will not actually be restored onto the device.

When an apk is installed during the course of a restore operation,
it is validated against the manifest contents and deleted if there
is a mismatch.  Also, if the newly-installed app is found to
disallow backups, no file content will be processed for that app.

Bug 4532159

Change-Id: I59630054584b1394e567de939192e22e597044ee
2011-06-03 14:06:46 -07:00
Dianne Hackborn
9313a27797 am 096762d6: am 8075fe48: am 78470718: Fix various places that were using the wrong display metrics.
* commit '096762d6efcae6300c02919bc6b3eaeeffccf91d':
  Fix various places that were using the wrong display metrics.
2011-06-02 16:50:59 -07:00
Dianne Hackborn
7dad2c24fa am 9b94aa18: am e5d37701: am 8ea5e1d7: Fix compat mode bugs when updating apps.
* commit '9b94aa18f78e6c6281202e72b5a7451bc479fe82':
  Fix compat mode bugs when updating apps.
2011-06-02 16:50:13 -07:00
Dianne Hackborn
546d64f56d resolved conflicts for merge of 5c2e4d20 to master
Change-Id: Iadbee872468ceafb54c5877046c91f6052f3c953
2011-06-02 14:29:13 -07:00
Dianne Hackborn
61ad43dc1e am 469465c4: am 0821f274: am 2a108403: I am a dummy.
* commit '469465c45e42c66201639feb49db5421f5843bbe':
  I am a dummy.
2011-06-02 10:40:52 -07:00
Dianne Hackborn
ed60f81940 resolved conflicts for merge of 76450622 to master
Change-Id: I26ccd8f264e65f100d894f43cf597a781552db83
2011-06-02 09:20:52 -07:00
satok
cc28a669f6 Merge "Add an api to get the display name for InputMethodSubtype" 2011-06-02 02:34:32 -07:00
satok
4f31353cb3 Add an api to get the display name for InputMethodSubtype
Bug: 4321667

Change-Id: I55aa844ff33dae0cf8ef00072e87727992eb77c1
2011-06-02 18:26:36 +09:00
Svetoslav Ganov
f9886f3ee9 AccessiblityManagerService not cleaning up dead binders.
1. AccessibilityManagerService was keeping handles to dead
   IAccessibilitymanagerClients - now doing so.

2. AccessibilityManagerService was lazily cleaning up dead
   IAccessibilityServiceConnections - now using a callback.

3. Cleaned up the book keeping of enabled services.

4. Fixed a bug that the input filter is still enabled
   when disabling accessibility.

Change-Id: I5e9af7ab684a3b71e8ee51125b1262a17e960eb0
2011-06-01 20:32:09 -07:00
Jeff Sharkey
287bd83f9e Snapshot PID/UID when enqueuing events.
Since ProcessRecord can change before event is processed, snapshot
PID/UID values when enqueuing.

Change-Id: I281e63310c8fc6c3761ae00e80e06654b18b3e17
2011-06-01 17:56:23 -07:00
Jeff Sharkey
7527990420 Collect historical network stats.
Periodically records delta network traffic into historical buckets to
support other services, such NetworkPolicyManager and Settings UI.

Introduces NetworkStatsHistory structure which contains sparse, uniform
buckets of data usage defined by timestamps.  Service periodically
polls NetworkStats and records changes into buckets.  It only persists
to disk when substantial changes have occured.  Current parameters
create 4 buckets each day, and persist for 90 days, resulting in about
8kB of data per network.

Only records stats for "well known" network interfaces that have been
claimed by Telephony or Wi-Fi subsystems.  Historical stats are also
keyed off identity (such as IMSI) to support SIM swapping.

Change-Id: Ia27d1289556a2bf9545fbc4f3b789425a01be53a
2011-06-01 17:44:52 -07:00
Jeff Sharkey
9599cc5f21 Tests for NetworkPolicyManager rule generation.
Verifies that policy changes trigger rule updates that respect current
foregroundActivities status.  Also verifies logic that promotes a UID
based on its most-foreground PID.  Verifies that policy changes result
in immediate rule changes.

Also verifies that BACKGROUND_DATA_SETTING_CHANGED broadcasts are sent
by policy changes.

Change-Id: I4fd0dad9e1dbccee2c5968244bb1814e6cb2c6e1
2011-06-01 17:26:30 -07:00
Jeff Sharkey
1b861278a2 Teach NetworkPolicyManager how to dumpsys itself.
Includes details on all internally known UIDs, which can be used for
debugging purposes.

Change-Id: I340d25212e3c7a76a57de0a94ffeea34b6748941
2011-06-01 17:21:17 -07:00
Jeff Sharkey
751fb11082 Merge "Policy and rules work for ConnectivityManager." 2011-06-01 17:18:15 -07:00
Jeff Sharkey
c006f1aec1 Policy and rules work for ConnectivityManager.
Teach ConnectivityManager about UID-specific rules derived from policy,
such as rejecting network traffic on "paid" interfaces.  Calls that
return NetworkInfo now filter based on any REJECT rules in effect for
the calling UID.  (Added uid parameter if callers that still want all
interfaces.)

Changed NetworkPolicyManager to derive rules based on current policy
combined with PowerManager and ActivityManager status, which it passes
to ConnectivityService for eventual enforcement through netd.  When
rules change the usability of a NetworkInfo for a specific UID, it also
dispatches CONNECTIVITY_ACTION broadcasts to that UID.  Combined paid
and background policy together to match current working definition.

Change-Id: I797ea49439fcc487cfe2cbc16703d4b91ceb9af6
2011-06-01 17:00:42 -07:00
Andy Stadler
ca680af21b Merge "Use unchecked admin lookup for getStorageEncryption()" 2011-06-01 15:59:58 -07:00
Andy Stadler
c994d693b6 Use unchecked admin lookup for getStorageEncryption()
Due to a copy/paste typo, getStorageEncryption() was protected by
getActiveAdminForCallerLocked(), which made the API unreadable if the
caller is not an admin.  This doesn't match the rest of the DPM API which
allows the "get" calls to be made anonymously.

This fix supercedes the proposed workaround CL in the DPM ApiDemo sample.

Change-Id: If1a6237634e97ced09a7c6a8876bb6b0f60c9be9
2011-06-01 15:30:54 -07:00
Christopher Tate
75a99709ac Restore from a previous full backup's tarfile
Usage:  adb restore [tarfilename]

Restores app data [and installs the apps if necessary from the backup
file] captured in a previous invocation of 'adb backup'.  The user
must explicitly acknowledge the action on-device before it is allowed
to proceed; this prevents any "invisible" pushes of content from the
host to the device.

Known issues:

* The settings databases and wallpaper are saved/restored, but lots
  of other system state is not yet captured in the full backup.  This
  means that for practical purposes this is usable for 3rd party
  apps at present but not for full-system cloning/imaging.

Change-Id: I0c748b645845e7c9178e30bf142857861a64efd3
2011-06-01 15:09:55 -07:00
Dianne Hackborn
36f80f3a5a resolved conflicts for merge of 590ec479 to master
Change-Id: I30503da6a73b9cb15eee66a67c75d50ccdc4b9f0
2011-05-31 23:11:16 -07:00
Mike Lockwood
46d0adf825 UsbService: Refactor USB host and device support into two separate classes
Host support is in UsbHostManager, device support is in UsbDeviceManager

Renamed UsbDeviceSettingsManager to UsbSettingsManager

Change-Id: Ib76e72957c233fa7f08f454d4d9a2a1da6368cc7
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-05-31 20:52:06 -04:00
Mike Lockwood
b0aee3ee43 Merge "Move stringToFile utility from ConnectivityService to FileUtils" 2011-05-31 16:14:08 -07:00
Svetoslav Ganov
cc4053e031 Accessibility serviceconfiguration via meta-data
Note: This is a part of two CL change and contains the
      system changes without updates to the settings.

1. Added a mechanism for configuring an accessibility service via
   XML file specified in a meta-data tag (similar to IMEs).

2. Added property for specifying a settings activity for an
   accessibility service.

3. Refactored the APIs in AccessibilityManager to return
   lists of AccessiblityServiceInfo instead ServiceInfo
   since the former describes an AccessibilityService in
   particular (similar to IMEs).

Change-Id: Ie8781bb7e0cdb329e583b6702a612a507367ad7b
2011-05-31 12:04:18 -07:00
satok
9b4157935a Use isAuxiliary instead of ExtraValue for the auxiliary subtypes.
Change-Id: Ibce4f884e697ca789b9942cf3abad43741040a87
2011-05-30 22:44:48 +09:00
Mike Lockwood
da8bb74b9d Move stringToFile utility from ConnectivityService to FileUtils
Change-Id: I59a2dc649d59677f6b5e7ade252587c7c151ec06
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-05-28 13:28:12 -04:00
Dianne Hackborn
096762d6ef am 8075fe48: am 78470718: Fix various places that were using the wrong display metrics.
* commit '8075fe48bf345e4014de9b7bee8def5f4373457c':
  Fix various places that were using the wrong display metrics.
2011-05-27 17:16:19 -07:00
Dianne Hackborn
8075fe48bf am 78470718: Fix various places that were using the wrong display metrics.
* commit '784707187d96b731df5256c1c2adb0aaf9037239':
  Fix various places that were using the wrong display metrics.
2011-05-27 17:12:53 -07:00
Dianne Hackborn
784707187d Fix various places that were using the wrong display metrics.
Change-Id: I1ac2a0c4a1b7c851dbc99d26f295c7dd49b0bd5c
2011-05-27 17:09:19 -07:00
Dianne Hackborn
9b94aa18f7 am e5d37701: am 8ea5e1d7: Fix compat mode bugs when updating apps.
* commit 'e5d377014b04022a04fd0b2b24b343d1e0ec8d2a':
  Fix compat mode bugs when updating apps.
2011-05-27 17:01:47 -07:00
Dianne Hackborn
e5d377014b am 8ea5e1d7: Fix compat mode bugs when updating apps.
* commit '8ea5e1d79eb1f05ee7628b0d45ea8fc8eea5330d':
  Fix compat mode bugs when updating apps.
2011-05-27 16:58:33 -07:00
Dianne Hackborn
8ea5e1d79e Fix compat mode bugs when updating apps.
No longer accidentally puts an app into compatibility mode.

Also various cleanup, freezing screen while switching between modes.

Change-Id: Ic1b3958be7800189a93f68e9dee3c5adfc45fe57
2011-05-27 16:49:29 -07:00
Elliott Hughes
d7eedc0a69 FileOutputStream guarantees to open O_TRUNC (unless you explicitly ask otherwise).
Change-Id: Ibd2f247d8e52b2814729c93442ae197c186660f6
2011-05-27 16:35:55 -07:00
Dianne Hackborn
5c2e4d20df am 8fcbfb52: am 94250ac6: Merge "Add new supports-screens attributes for declaring the compatible screens." into honeycomb-mr2
* commit '8fcbfb52607263754b6d3895a112f792c5c3a12e':
  Add new supports-screens attributes for declaring the compatible screens.
2011-05-26 17:12:36 -07:00
Dianne Hackborn
8fcbfb5260 am 94250ac6: Merge "Add new supports-screens attributes for declaring the compatible screens." into honeycomb-mr2
* commit '94250ac69c6e07534e4781d3479dccb79d8c366c':
  Add new supports-screens attributes for declaring the compatible screens.
2011-05-26 17:09:39 -07:00
Dianne Hackborn
94250ac69c Merge "Add new supports-screens attributes for declaring the compatible screens." into honeycomb-mr2 2011-05-26 17:07:52 -07:00
Dianne Hackborn
df6e980e3f Add new supports-screens attributes for declaring the compatible screens.
Change-Id: I40d57e4354e48accc1027c9f90916ea73eb5190d
android:requiresSmallestWidthDp provides the smallest supported width.
android:compatibleWidthLimitDp provides the largest compatible width.
2011-05-26 14:48:04 -07:00
Dianne Hackborn
469465c45e am 0821f274: am 2a108403: I am a dummy.
* commit '0821f2745d05af98195c9c1c7889ca14e9c56e0b':
  I am a dummy.
2011-05-26 14:14:41 -07:00
Dianne Hackborn
76450622f0 am d5238cc1: am 7a09f72b: Merge "Rework how we decide whether to use system or status bar." into honeycomb-mr2
* commit 'd5238cc1ab8366389b2aada228f2f2e5cbb3244e':
  Rework how we decide whether to use system or status bar.
2011-05-26 14:14:35 -07:00
Kenny Root
5e34a1945a am 1d8f8819: Merge "Break apart queries to getInstalled* API DO NOT MERGE" into honeycomb-mr2
* commit '1d8f8819f1e98cdf3b7756396158613e95fe9eb6':
  Break apart queries to getInstalled* API DO NOT MERGE
2011-05-26 13:34:42 -07:00
Dianne Hackborn
0821f2745d am 2a108403: I am a dummy.
* commit '2a108403803bd30bee1c019060c208fb8c52c10c':
  I am a dummy.
2011-05-26 13:34:37 -07:00
Dianne Hackborn
d5238cc1ab am 7a09f72b: Merge "Rework how we decide whether to use system or status bar." into honeycomb-mr2
* commit '7a09f72b8850ec22e4ca7fd50aba20ead7666f67':
  Rework how we decide whether to use system or status bar.
2011-05-26 13:34:33 -07:00
Kenny Root
1d8f8819f1 Merge "Break apart queries to getInstalled* API DO NOT MERGE" into honeycomb-mr2 2011-05-26 13:10:23 -07:00
Dianne Hackborn
2a10840380 I am a dummy.
Change-Id: Ie6908a8931954f83ab0e9b905173b576dbf3661d
2011-05-26 11:45:00 -07:00
Dianne Hackborn
590ec479fd am 80ef2a97: am 42f8094c: Merge "Spiffy new compatibility mode UI." into honeycomb-mr2
* commit '80ef2a9745e6103efd9698577536bbfed1fd74f6':
  Spiffy new compatibility mode UI.
2011-05-26 11:02:52 -07:00
Dianne Hackborn
81e56d535c Rework how we decide whether to use system or status bar.
The PhoneWindowManager is now responsible for determing this,
since it needs to do this before we can generate the configuration
since we need to take into account the system bar size we will use.

Also the Display should now report the screen height without
including the system bar.

Change-Id: I82dfcc5e327e4d13d82c373c6c870f557a99b757
2011-05-26 10:46:19 -07:00
Dianne Hackborn
80ef2a9745 am 42f8094c: Merge "Spiffy new compatibility mode UI." into honeycomb-mr2
* commit '42f8094c066209a65b09d53611ef5c93daba4c51':
  Spiffy new compatibility mode UI.
2011-05-26 10:00:00 -07:00
Kenny Root
1bb6cf18c0 Break apart queries to getInstalled* API DO NOT MERGE
To avoid blowing past the Binder IPC limit, change the
PackageManagerService to have a DB-like interaction where the client
tells the service the last "row" that it read.

The fact that we use a HashMap instead of a TreeMap makes this
problematic. For now we're just making a new ArrayList for the keys and
then sorting them for each call. This can make the API slower for callers
of this, but it's probably greatly overshadowed by the cost of the data
transfer itself.

Bug: 4064282
Change-Id: Ia3a8cdaa94581ed9336f2e05694b8c8a5f757bce
2011-05-26 09:53:24 -07:00
Daniel Sandler
8c1132e3ce Merge "Framework support for Android Dreams." 2011-05-26 06:01:41 -07:00
satok
42c5a1666c Fix internal variables and equals in SuggestionSpan
Bug: 4443922

- Instantiating other package's class for the name is complicated, so we changed the internal value for the notification target class from Class to String.
- Implement equals

Change-Id: Iaf7682be777f0027d33c9a3be4609ac01b6950ad
2011-05-26 19:21:35 +09:00
Joe Onorato
2a3c67c0e9 am cfb046de: am 2c09a9c0: am 5520610c: Merge "Make adb shell am display-size persistent." into honeycomb-mr2
* commit 'cfb046dead49568de6f6808a697e0508ef39a3a6':
  Make adb shell am display-size persistent.
2011-05-25 21:29:07 -07:00
Dianne Hackborn
620d69d85b am 103e74d9: am d6f29cd8: am 2a15eb55: Merge "Fix issue #4445007: DPM initializes some values to 1, instead of 0" into honeycomb-mr2
* commit '103e74d9b1fdebbbc035da0567cd075554d4137d':
  Fix issue #4445007: DPM initializes some values to 1, instead of 0
2011-05-25 21:28:39 -07:00