3265 Commits

Author SHA1 Message Date
Dianne Hackborn
78d688369a Implement tracking of package install times.
Provides information about the time at which the package was
first installed and the time it was last updated.

Change-Id: Icb43f77b5b669a1ce685e8913046b8be386b6175
2010-10-07 18:48:22 -07:00
Kenny Root
6a6b007c77 Symlink application lib directory when on SD card
This will help legacy games that use dlopen() to directly access the
/data/data/<app>/lib directory before the
ApplicationInfo.nativeLibraryDir was part of the API.

Change-Id: Ie9f3e7239b6334708b5d086ffafe66a507f6d9da
2010-10-07 17:20:26 -07:00
Kenny Root
480afe70fa Eliminate MCS_GIVE_UP state
It's basically a duplicate of MCS_UNBIND state, so just get rid of it
which simplifies the state transitions.

Bug: 3067076
Change-Id: I34111be88dd727af8ad59c9f49debd54ede827ea
2010-10-07 10:53:01 -07:00
Kenny Root
0145e36cad Revert "Only allow 8 OBBs to be mounted by a UID"
This reverts commit 27358a69b33eaa268ee75ef778ec824c8085adcc.

Conflicts:

	services/java/com/android/server/MountService.java

Change-Id: Ia14be97b4f22e95daba0d191cfc62adf3d1469cd
2010-10-07 10:14:09 -07:00
Kenny Root
5919ac6b41 OBB: track binder death observers
An incorrect assumption about how death observers were tracked lead to
an IllegalArgumentException in some cases. Make sure the linking and
unlinking of the Binder to its ObbState death observer is symmetric to
avoid this problem.

Bug: 3062360
Change-Id: Idd016db12551c80cd74d00f11cf6569bd3b4ce21
2010-10-06 17:00:00 -07:00
Kenny Root
a3ee5c0351 Merge "Add MountService tests and fix a bug it found" into gingerbread 2010-10-06 16:59:23 -07:00
Kenny Root
17eb6fb07c Add MountService tests and fix a bug it found
Add some MountService tests that are based partially on some stuff done
in PackageManagerTests. This allows us to test the OBB changes in an
easy way.

Also, it found some bugs in the DefaultContainerService connection state
machine, so fix those while we're at it.

Change-Id: I18f38593be754eb32fb6e842f88eec47e2beefce
2010-10-06 15:39:28 -07:00
Dianne Hackborn
043fcd9847 Work on issue #3062691: GPS enable bypass via com.android.settings.widget.SettingsAppWidgetProvider
Exposes an Intent I need (okay it fixes an unrelated thing in the power widget),
and fixes some dump output.

Change-Id: I51d6c93a6ac879bab64e9d5aa21129e2bbcd461b
2010-10-06 14:27:34 -07:00
Dianne Hackborn
4e6baf2473 Merge "Fix issue #3001368: API REVIEW: android.app.Activity" into gingerbread 2010-10-05 18:56:54 -07:00
Dianne Hackborn
3c4c2b7e6f Fix issue #3001368: API REVIEW: android.app.Activity
Bye bye, lots of junk.

Change-Id: Idd72fc525851277362b2a1ff3bb0f7865fe655fd
2010-10-05 18:07:54 -07:00
Eric Laurent
37947afe90 Merge "Fixed AudioFlinger not always pausing tracks" into gingerbread 2010-10-05 17:06:16 -07:00
Eric Laurent
9a30fc13f5 Fixed AudioFlinger not always pausing tracks
If the pause request is received before the AudioTrack buffer was
completelly filled and the track ready for mixing, the pause is
not executed: the track just underruns and stays in pausing state.

The fix consists in considering the track ready for mixing immediately
if pausing.

Change-Id: Ia6cb4703fee2126e41011a6400ea8eeb3a3e5456
2010-10-05 14:41:42 -07:00
Joe Onorato
f7872780ca Merge "PowerManagerService needs yet another flag..." into gingerbread 2010-10-05 14:41:16 -07:00
Joe Onorato
8274a0e536 PowerManagerService needs yet another flag...
... to make sure that if you press the power button to turn off the
screen, that the prox sensor won't turn it back on.

Bug: 3011618
Change-Id: Id16c1d65417539d4592f485b1c3efb737540c3cd
2010-10-05 17:39:01 -04:00
Kenny Root
831baa2e25 Remove lingering system app native libs in /data
If a system app had a lingering native library in /data/data/<app>/lib,
it would prefer that over the one in /system/lib due to recent changed
in the Dalvik JNI class loading code.

To "fix" that we need to check if there are any native libraries in a
/data/data/<app>/lib directory for any non-updated system apps and
delete them during scanning.

Change-Id: If3a22e41a8531e9e5a44ba001dcea46253d47d45
2010-10-05 12:56:03 -07:00
Kenny Root
8735c4cda0 Merge "Get correct native library path on reinstall" into gingerbread 2010-10-05 12:48:46 -07:00
Kenny Root
bd135c1931 Get correct native library path on reinstall
If an application moved between internal and external storage during a
reinstall, we were getting the wrong path. This change fixes going from
internal to external and external to internal which need different
fixes.

Bug: 3019708
Change-Id: If5859aeab7505cbbb35ae5724de1224a8733f2e8
2010-10-05 12:33:33 -07:00
Mike Lockwood
bea3118337 GPS: Clean up GPS API extension initialization in JNI code.
Change-Id: Ic5551c94bfb4e2c31cdc3ed92d938f00f46785d6
Signed-off-by: Mike Lockwood <lockwood@android.com>
2010-10-05 15:07:57 -04:00
Mark Vandevoorde
8863c43d9e Remove races in Geocoder/LocationProvider Proxy
The proxy must ensure that enable/disable calls are not reordered when
proxied; this change adds synchronization to prevent such reordering
that could happen following an onServiceConnected() callback, and to
ensure cross-thread visibility of writes.

Also, when the package is updated, the old service instance must be
unbound and the new one bound.  This changes uses a separate
Connection object per service instance (package version) to avoid
confusing the binder objects.

Change-Id: I0907f7eed211b97ccfffa395754f1eb8ea8d8fec
2010-10-05 11:12:48 -07:00
Miguel Torroja
1e84da822e GPS: Add support for AGpsRilInterface.
Adding changes to be able to have access to missing data to SUPL
(celld, imsi, WAP_PUSH and SMS)

Change-Id: I0207f7f7ea6595ed3fd7021cb732feddf52e4cf9
Signed-off-by: Mike Lockwood <lockwood@android.com>
2010-10-05 13:15:37 -04:00
Dianne Hackborn
6f7e10ca0a Merge "Make it easier to figure out whether an app can go on sd card." into gingerbread 2010-10-04 23:00:25 -07:00
Mathias Agopian
19058877df Merge "refactored screenshot code" into gingerbread 2010-10-04 20:04:42 -07:00
Dianne Hackborn
54e570f78b Make it easier to figure out whether an app can go on sd card.
Change-Id: I9195a0881b2c435b138f39c2ab1505dc820caf10
2010-10-04 18:35:10 -07:00
Mathias Agopian
597c7f67b5 refactored screenshot code
the core screenshot function now can capture the screen at any lower resolution
performing bilinear filtering.

we also now have some client code to interface with the screenshot service.

it's now possible to request a screenshot at a lower resolution.

Change-Id: I33689bba98507ab928d0898b21596d0d2fe4b953
2010-10-04 17:36:17 -07:00
Dianne Hackborn
e5439f228f Fix issue #3041660: Camera image flips upside down when rotating device
Apps now must explicitly opt in to having their rotation changed while
forcing landscape mode.  Also add some new orientation constants for other
things apps may want to do.

Change-Id: If64d84b5ef54793ee717ebda9b4c76408efc9bfd
2010-10-04 14:01:39 -07:00
Dianne Hackborn
3aeee33c72 Don't write settings multiple times when unmounting.
The package manager would write its settings multiple times,
once for each app on the SD card, when unmounting external storage.
This was kind-of slow.

Change-Id: Ic5ce12022a9ce26857d1db3071e316750b03f05a
2010-10-02 19:06:18 -07:00
Jeff Brown
f2f4871830 Minor logging changes to input dispatcher to help with debugging.
Added dumpsys reporting to EventHub.
Made the formatting a bit clearer.
Added 'Locked' suffix to some internal methods of EventHub.

Change-Id: Ic449560bcce378f6361895d27c66854e9724abb0
2010-10-01 18:05:13 -07:00
Jeff Brown
0eaf3931a3 Support haptic feedback for virtual keys defined in key layout.
Change-Id: I83e4108a87332692e03791dc066206becbc7941f
2010-10-01 15:08:56 -07:00
Kenny Root
d9e88d22f0 Merge "Add "none" for vold and deprecate mkobb -c" into gingerbread 2010-10-01 14:06:46 -07:00
Kenny Root
12ffd9bf4c Add "none" for vold and deprecate mkobb -c
If vold isn't told "none" for the key, it will try to mount it as an
encrypted container.

Also remove the -c option from mkobb since it can be triggered by
including a key as well.

Change-Id: I40a8ff3f778bfda682312630e6687ecc14b51844
2010-10-01 14:02:47 -07:00
Dianne Hackborn
6493e64c2a Fix issue #3037083: Problem report for Pinball
The app was toggling between hiding and showing the status bar, because
the dialog was large enough to fill the screen but didn't set to hide
the status bar.

It turns out that the code to determine the top fullscreen window is
intrinsically unstable, since it relies on comparing a window's frame
with the screen, yet the window frame can change as a result of changes
such as hiding the status bar.

Instead, we now simplify all of this to just say that the top fillxfill
window gets to control the status bar.

Change-Id: I22913adf7235fe0d52612f6738c7c94351274e38
2010-10-01 13:06:30 -07:00
Kenny Root
2942391801 Fix regression in OBB key handling
Change-Id: If583cbdb8be68ffed094a5fde7ee00e1914c5841
2010-10-01 08:38:56 -07:00
Dianne Hackborn
0a69f59760 Merge "Rub in a little 'ol log-b-gone." into gingerbread 2010-09-30 19:03:38 -07:00
Dianne Hackborn
cef65eeb03 Rub in a little 'ol log-b-gone.
Mmmmmm...  great fresh scent!

Change-Id: I050e70b31b5d4a9c6731f15a4b51a3620a33a78d
2010-09-30 18:27:22 -07:00
Joe Onorato
ab2e628484 Merge "Use the private version of userActivity." into gingerbread 2010-09-30 18:12:24 -07:00
Kenny Root
8b28441ada Merge "Being already unmounted is not a failure" into gingerbread 2010-09-30 18:03:25 -07:00
Kenny Root
4da02392a1 Being already unmounted is not a failure
Change-Id: I5943096444e3d4d4cc5fd63f64a09c32f649a227
2010-09-30 17:59:42 -07:00
Eric Laurent
220ab8877b Merge "Issue 3032913: improve AudioTrack recovery time" into gingerbread 2010-09-30 17:39:36 -07:00
Kenny Root
735de3b38a Hash keys with MD5; track IBinders not IInterface
Using a plaintext password doesn't work unless it's a certain length, so
just hash the plaintext password with MD5 to make it the right length
for the twofish encryption.

Tracking the IInterface doesn't make much sense since it's different
each time, so track the IBinder instead. That way we can unlinkToDeath
the binder when the last thing it's holding onto goes away.

Change-Id: Id828d25b4d74f27e9d8b4bfb3909c964469cc473
2010-09-30 17:25:05 -07:00
Kenny Root
27358a69b3 Only allow 8 OBBs to be mounted by a UID
Change-Id: I4f017c5408af903c6c9ba007a2cf7f488a7fcd27
2010-09-30 17:24:53 -07:00
Kenny Root
38cf8867a8 Remove OBBs from state list when volume unmounted
Don't keep tracking OBBs when the volume they're located on goes away.
Remove them from our state tracking maps and then send a notification to
any listener that is still around.

Add a dump handler to MountService so the state of the mount lists
can be inspected.

Change the API to just make a callback directly to the change listener
when mount is called when it's already mounted or unmount called when
it's already unmounted.

Change-Id: Idb4afbb943ca5ca775825f908bff334e3ce1cfcc
2010-09-30 17:24:34 -07:00
Eric Laurent
4712baab81 Issue 3032913: improve AudioTrack recovery time
This issue showed that when an AudioTrack underruns during a too long period
of time and is therefore disabled by audioflinger mixer, it takes an additional
delay of up to 3 seconds to recover.
This fix adds a simple mechanism to recover immediately when the client application
is ready to write data again in the AudioTrack buffer

Also throttle warnings on record overflows

Change-Id: I8b2c71578dd134b9e60a15ee4d91b70f3799cb3d
2010-09-30 17:21:23 -07:00
Joe Onorato
a39ccb6c4a Use the private version of userActivity.
We were flunking the enforcement of DEVICE_POWER since apps don't need that permission to use a wake
lock.

Bug: 3051596
Change-Id: I1910d8402adb3e9a4d8635de5d2a301f6286f216
2010-09-30 16:47:09 -07:00
Mike Lockwood
e97ae40dff location: rebind to network location and geocoder services after package update
Change-Id: I2d7db3512b9edd7e0ba27d97442967fc2278e3b9
Signed-off-by: Mike Lockwood <lockwood@android.com>
2010-09-30 15:25:54 -04:00
Joe Onorato
0c32c09cd3 Revert "Revert "Check for the DEVICE_POWER permission in userActivity.""
This reverts commit 4da4827504df019d4e64dd864f70526ff6d384a0.
2010-09-29 10:20:59 -07:00
Kenny Root
212d81a004 Merge "Move all the permissions check up for unmount" into gingerbread 2010-09-29 07:40:32 -07:00
Kenny Root
f1121dc1d3 Move all the permissions check up for unmount
We have already scanned the state of the OBB in mountObb, so check the
caller against the stored state in the unmountObb call. This allows us
to ensure the calling binder is the same one that mounted it since we
tie the lifecycle of the OBB to the lifecycle of the binder.

Change-Id: I45d9cfbab5d3f5b37a6a9b594b10bd8b91cccc45
2010-09-29 07:38:55 -07:00
Nick Pelly
038cabe024 NFC integration
Source: Trusted_NFC_Device_Host_AA03.01e02_google.zip code drop (23-Sep-2010)

Conflicts:

	core/java/android/app/ApplicationContext.java
	core/java/android/provider/Settings.java
	core/jni/Android.mk
	core/jni/AndroidRuntime.cpp
	core/res/AndroidManifest.xml
	include/utils/Asset.h

Change-Id: I62c92f4c79f5ee65126c97602f6bc1c15794e573
Signed-off-by: Nick Pelly <npelly@google.com>
2010-09-28 22:36:27 -07:00
Mike Lockwood
4da4827504 Revert "Check for the DEVICE_POWER permission in userActivity."
The change broke SetupWizard and probably other apps

This reverts commit 059f8f93e6e89f80dfb85cfdbcd3bce64c7b1e2c.
2010-09-28 23:07:26 -04:00
Kenny Root
05105f7abe Update OBB API to include callbacks
Add a callback for users of the StorageManager API to be able to receive
notifications when the requested operation completes for mountObb and
unmountObb.

Add NDK API to get to ObbInfo like the Java API has.

Also update the docs for the API and remove the "STOPSHIP" comments.

Change-Id: I23a4409c7f8b74d3169614beba920b4d667990a4
2010-09-28 17:23:26 -07:00