Commit Graph

308 Commits

Author SHA1 Message Date
Brad Fitzpatrick
385a753dea resolved conflicts for merge of 368fdba4 to master
Change-Id: I42b7b433c86a71a5da5db67109f056a280077c9d
2010-10-21 07:39:10 -07:00
Joe Onorato
431bb22695 Reduce logging.
Remember, the system and main logs are
    - Shared resources
    - Primarily for recording problems
    - To be used only for large grained events during normal operation

Bug: 3104855
Change-Id: I136fbd101917dcbc8ebc3f96f276426b48bde7b7
2010-10-19 15:08:05 -04:00
Kenny Root
1072b7f751 am c0e97872: am 928b0748: Merge "Don\'t symlink native library paths for old apps" into gingerbread
Merge commit 'c0e9787293b761b04bdb07908751b22458f17bbc'

* commit 'c0e9787293b761b04bdb07908751b22458f17bbc':
  Don't symlink native library paths for old apps
2010-10-19 11:19:45 -07:00
Kenny Root
e68d58a298 Don't symlink native library paths for old apps
Apps that existed in an ASEC container before we put native libraries
in the ASEC container will have their native libraries in the
/data/data/<app>/lib directory. Don't try to symlink to the ASEC
container's library directory in this case.

Bug: 3108230
Change-Id: I32167341cc8ff8c005e50f456ee7c783bfb0bf22
2010-10-18 16:55:27 -07:00
Dianne Hackborn
875ecaa511 am 13e46665: am 736f5ec4: Merge "Work on issue #3101415: Crespo apps seem to have their UID changed over time." into gingerbread
Merge commit '13e46665ff69c1a37880762d7d611aacdf02dac7'

* commit '13e46665ff69c1a37880762d7d611aacdf02dac7':
  Work on issue #3101415: Crespo apps seem to have their UID changed over time.
2010-10-18 08:04:47 -07:00
Nick Pelly
cd0e839a24 NFC: Move NFC service implementation out of system_server.
NFC service is now an application service in packages/apps/Nfc.

NFC service is registered through ServiceManager.addService(), and the proxy
object NfcAdapter obtains a handle to it through ServiceManager.getService().

**Important** Had to add new symbols AID_NFC / NFC_UID / android.uid.nfc and
modify service_manager.c, Process.java and PackageManagerService.java in order
to force the com.android.nfc process to take a fixed uid, so that it can use
ServiceManager.addService().

Most of the JNI has moved to packages/apps/Nfc/jni. However NdefRecord and
NdefMessage require some in-process native code, so android_com_NdefMessage.cpp
and android_com_NdefRecord.cpp stay in frameworks/base/core/jni. They link to
a very small library libnfc_ndef.so that implements NDEF message parsing. This
has been added to core.mk so all devices (even without NFC hardware) can work
with NDEF data.

Bug: 3041259
Bug: 3097445
Change-Id: If7f00cd8f2053acfc9319ca366d4a9c02bd396e6
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-17 18:35:29 -07:00
Dianne Hackborn
1769256966 am 10d48f26: am efb58101: Debug logs for issue #3101415: Apps seem to have their UID changed over time.
Merge commit '10d48f26e72dc7978ae683e8f99cc71409eb75ef'

* commit '10d48f26e72dc7978ae683e8f99cc71409eb75ef':
  Debug logs for issue #3101415: Apps seem to have their UID changed over time.
2010-10-17 13:49:16 -07:00
Dianne Hackborn
8bdf5935c0 Work on issue #3101415: Crespo apps seem to have their UID changed over time.
fsync!

Change-Id: Ie6c5397202579935ac69bf61d3e7b3081ecf269c
2010-10-15 14:46:33 -07:00
Dianne Hackborn
efb581018b Debug logs for issue #3101415: Apps seem to have their UID changed over time.
- Activity manager now prints the pid doing a startActivity request.
- Package manager now remembers messages about problems it has parsing
  packages.xml.

Change-Id: I11a75aa3953dbfa5dd41cfbdf69116c764ec228f
2010-10-15 11:22:17 -07:00
Kenny Root
09b35d2fe5 am 89b73a75: am 361a6ad1: Merge "Handle native library deletion in scanPackage" into gingerbread
Merge commit '89b73a75467d85c58467c5b8c080c77d25860fe0'

* commit '89b73a75467d85c58467c5b8c080c77d25860fe0':
  Handle native library deletion in scanPackage
2010-10-15 08:32:43 -07:00
Nick Pelly
bc21fdefdf NFC: Move NFC service implementation out of system_server.
NFC service is now an application service in packages/apps/Nfc.

NFC service is registered through ServiceManager.addService(), and the proxy
object NfcAdapter obtains a handle to it through ServiceManager.getService().

**Important** Had to add new symbols AID_NFC / NFC_UID / android.uid.nfc and
modify service_manager.c, Process.java and PackageManagerService.java in order
to force the com.android.nfc process to take a fixed uid, so that it can use
ServiceManager.addService().

Most of the JNI has moved to packages/apps/Nfc/jni. However NdefRecord and
NdefMessage require some in-process native code, so android_com_NdefMessage.cpp
and android_com_NdefRecord.cpp stay in frameworks/base/core/jni. They link to
a very small library libnfc_ndef.so that implements NDEF message parsing. This
has been added to core.mk so all devices (even without NFC hardware) can work
with NDEF data.

Bug: 3041259
Bug: 3097445
Change-Id: If8f00ce8f2053acfc9319ca366d4a9c02bd396e6
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-15 02:12:32 -07:00
Andy Stadler
e55fa3b0fe am 8a703c77: am 8e2be267: Add versionCode and versionName to dumpsys packages
Merge commit '8a703c772ef233998fccfbdb159c8879c72fa5d3'

* commit '8a703c772ef233998fccfbdb159c8879c72fa5d3':
  Add versionCode and versionName to dumpsys packages
2010-10-13 23:35:12 -07:00
Kenny Root
70e4210ad9 Handle native library deletion in scanPackage
The deletion of native libraries was initially added to
FileInstallArgs.cleanUpResourcesLI() as a way to get rid of old native
libraries during an upgrade, but it runs well after scanPackage unpacks
the new native libraries. scanPackage now removes old libraries before
unpacking the new ones, so we don't need this code anymore.

Bug: 3087739
Change-Id: I54aca830ec34d6440ba22f117d55aa3107bf5b75
2010-10-13 08:49:24 -07:00
Kenny Root
ab275bb637 am 1c67b7af: am a4e95dfe: Merge "Grant URI permissions to the MCS" into gingerbread
Merge commit '1c67b7af0147080de807db3cc564899db85b43a8'

* commit '1c67b7af0147080de807db3cc564899db85b43a8':
  Grant URI permissions to the MCS
2010-10-12 16:40:47 -07:00
Andy Stadler
8e2be267f5 Add versionCode and versionName to dumpsys packages
bug: 3090491
Change-Id: If116baaeb83bd282c5c5534fde6248f19830a71c
2010-10-12 15:05:06 -07:00
Kenny Root
1112857632 Grant URI permissions to the MCS
When the PackageManagerService is asked to install from a URI, it might
be explicitly granted the permission to read from the URI content
provider. We need to pass along these permissions to the
MediaContainerService (DefaultContainerService) to ensure the MCS can
read from the content provider.

Change-Id: Ie7ddaeb638af82b60792a4c3f8c99e1e8eef1916
2010-10-11 15:11:12 -07:00
Dianne Hackborn
cc60839643 am 681f327e: am 62d8874e: Merge "Fix retaining of granted permissions when updating of system app." into gingerbread
Merge commit '681f327e839a40a4d55d3567af341b9e90f62378'

* commit '681f327e839a40a4d55d3567af341b9e90f62378':
  Fix retaining of granted permissions when updating of system app.
2010-10-10 19:13:09 -07:00
Dianne Hackborn
615e2fa175 am b77455ee: am 78d68836: Implement tracking of package install times.
Merge commit 'b77455ee290691b036ac79236a93e57ff294ef0c'

* commit 'b77455ee290691b036ac79236a93e57ff294ef0c':
  Implement tracking of package install times.
2010-10-10 14:20:34 -07:00
Kenny Root
5bc3addb45 am 0689b60b: am 54e01e0f: Merge "Symlink application lib directory when on SD card" into gingerbread
Merge commit '0689b60b8644d7c4c76e5cdf7e6ce5cc4c5be124'

* commit '0689b60b8644d7c4c76e5cdf7e6ce5cc4c5be124':
  Symlink application lib directory when on SD card
2010-10-10 14:19:52 -07:00
Dianne Hackborn
2fe979fc61 Fix retaining of granted permissions when updating of system app.
Was broken when the app is using a shared user ID.

Change-Id: I088334f6540889969ee4367fa502807ce3f94f6a
2010-10-08 15:07:17 -07:00
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
c5610a4c13 am cfc80bd5: am 2c3360fe: Merge "Remove lingering system app native libs in /data" into gingerbread
Merge commit 'cfc80bd5c1e4f0207357b288b1b7b8374a31ba70'

* commit 'cfc80bd5c1e4f0207357b288b1b7b8374a31ba70':
  Remove lingering system app native libs in /data
2010-10-07 12:21:22 -07:00
Kenny Root
13297fddcb am f2cc2e52: am 8735c4cd: Merge "Get correct native library path on reinstall" into gingerbread
Merge commit 'f2cc2e522177683145b2daa0de0ed898b865824d'

* commit 'f2cc2e522177683145b2daa0de0ed898b865824d':
  Get correct native library path on reinstall
2010-10-07 12:20:25 -07: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
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
Dianne Hackborn
1869ad04c9 am 4e183215: am 1073e3fa: Merge "Don\'t write settings multiple times when unmounting." into gingerbread
Merge commit '4e183215bac239bbc039df361fed034a965030ec'

* commit '4e183215bac239bbc039df361fed034a965030ec':
  Don't write settings multiple times when unmounting.
2010-10-04 12:05:00 -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
Dianne Hackborn
dc71b9e4d6 resolved conflicts for merge of 6a3eddb4 to master
Change-Id: I1ca1d100274d4a733ef2bf58b0d5d7217b4f858e
2010-09-30 20:34:34 -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
Kenny Root
831f898756 am 8f767774: am 465618ed: Merge "Use buffered output during packages.xml write" into gingerbread
Merge commit '8f767774230cba9b5cfc298f2e24972a79cd0182'

* commit '8f767774230cba9b5cfc298f2e24972a79cd0182':
  Use buffered output during packages.xml write
2010-09-27 08:28:07 -07:00
Kenny Root
9f306d78a4 Use buffered output during packages.xml write
FileOutputStream writes data one byte at a time, so use the
BufferedOutputStream to wrap it and write once all the XML serialization
is done.

Change-Id: I419a6fcac2ac9a72a6cf41d4ca6e7ab6c7505618
2010-09-26 11:19:47 -07:00
Dianne Hackborn
fde5e965d4 am 65b5a65e: am 4db643eb: Merge "In theory the package manager now scans /vendor/app" into gingerbread
Merge commit '65b5a65e790458be0d6f70fafa9e151ba22a9e2e'

* commit '65b5a65e790458be0d6f70fafa9e151ba22a9e2e':
  In theory the package manager now scans /vendor/app
2010-09-20 19:33:46 -07:00
Dianne Hackborn
3b4bac7a2a In theory the package manager now scans /vendor/app
Not tested.

Change-Id: Ib6120d645074c95dd0afd1476f6167aec5d50bb9
2010-09-20 16:35:22 -07:00
Kenny Root
685da21c1c am 3ca26914: am 30434415: Merge "Dedupe timestamp in PackageSettings" into gingerbread
Merge commit '3ca2691446d333d52b1c0a39e6df74e03c2407cc'

* commit '3ca2691446d333d52b1c0a39e6df74e03c2407cc':
  Dedupe timestamp in PackageSettings
2010-09-15 07:08:15 -07:00
Kenny Root
7d794fbd30 Dedupe timestamp in PackageSettings
Timestamp data was duplicated making the management of timestamp
unnecessarily complicated.

Change-Id: Ia13be6ee9809a314232453e8627a54f9c9d8374d
2010-09-13 16:34:05 -07:00
Kenny Root
5d8b320428 am 1361a5bd: am 07a9e8d3: Merge changes Ie3648509,I53db73c3 into gingerbread
Merge commit '1361a5bd1eba1cae16c301622324153c3d50b84c'

* commit '1361a5bd1eba1cae16c301622324153c3d50b84c':
  Move native library removal function to helper
  Initialize native library path in PackageSetting
2010-09-12 18:06:07 -07:00
Kenny Root
8f7cc02c7c Move native library removal function to helper
Moves the remoteNativeLibrariesLI call to NativeLibraryHelper to prepare
for being able to symlink the /data/data/<package>/lib dir to the ASEC
container.

Change-Id: Ie3648509c6b6293a8d9bdd815610ab408df5047f
2010-09-12 09:04:56 -07:00
Kenny Root
806cc13a08 Initialize native library path in PackageSetting
During boot-up we weren't paying attention to the nativeLibraryPath that
was read from the package settings XML file which reset the path to the
default /data/data/<package>/lib directory.

This adds nativeLibraryPath as an argument to the PackageSettings
constructor and related functions that will pull that value in from the
settings file.

It also removes the call to nativeLibraryDir.mkdir() which installd does
by itself.

Change-Id: I53db73c3b1bc90997a4a73f7f2fbaee125e6f67e
2010-09-12 09:04:48 -07:00
Rich Cannings
d14f0dfd58 am 73698457: am 6bff8c79: Merge "Remove the use of FileInputStream.available()" into gingerbread
Merge commit '736984573a1975d69d1c6efd87e4af9ca16e505f'

* commit '736984573a1975d69d1c6efd87e4af9ca16e505f':
  Remove the use of FileInputStream.available()
2010-09-09 16:51:53 -07:00
Rich Cannings
8d578836dc Remove the use of FileInputStream.available()
Bug: 2976294
Change-Id: I34b13cedbf1d2338163ef74454817c318a3a24f5
2010-09-09 16:28:48 -07:00
Marco Nelissen
462bac9222 am e7884d68: am d85621c9: Don\'t crash when extra logging is enabled.
Merge commit 'e7884d68a613e579a12a52455f6b5b13a90a0f8a'

* commit 'e7884d68a613e579a12a52455f6b5b13a90a0f8a':
  Don't crash when extra logging is enabled.
2010-09-03 11:54:31 -07:00
Marco Nelissen
d85621c938 Don't crash when extra logging is enabled.
Change-Id: I76cf8db0f51ed33e91acee9636180e8d7c0b5ff9
2010-09-03 11:46:19 -07:00
Kenny Root
4d42bdec82 am 0eec8948: am 305bcbf0: Decrease PackageManagerService wait time for vold
Merge commit '0eec8948f89c5216464d8204cadd69d7a6ec3669'

* commit '0eec8948f89c5216464d8204cadd69d7a6ec3669':
  Decrease PackageManagerService wait time for vold
2010-09-03 09:58:51 -07:00
Kenny Root
305bcbf0c9 Decrease PackageManagerService wait time for vold
Up the blocking queue maximum to twice the number of containers we
allow which should let "asec list" complete without blocking the thread
several times.

Change the threads for the NativeDaemonConnector to vold and netd to be
more descriptive instead of the same name.

Bug: 2501075
Change-Id: I7e7949845a6c70a3d619aec0fa79ceef3c17a4be
2010-09-03 09:33:34 -07:00
Kenny Root
59f6b0da29 am 9088a3d1: am 7c1bd7fd: Fix logic error in downgrade of system apps
Merge commit '9088a3d153ef28dfa383fda0935d99bdc0c2b2f6'

* commit '9088a3d153ef28dfa383fda0935d99bdc0c2b2f6':
  Fix logic error in downgrade of system apps
2010-09-01 16:57:52 -07:00
Kenny Root
188aa566e6 am 11d12f7e: am fca5677a: Merge "Add null check for package settings" into gingerbread
Merge commit '11d12f7efc588b0e945c42952e67d96f2421dc26'

* commit '11d12f7efc588b0e945c42952e67d96f2421dc26':
  Add null check for package settings
2010-09-01 16:57:42 -07:00
Kenny Root
7c1bd7fdbf Fix logic error in downgrade of system apps
A logic error would allow not deleting data when uninstalling a system
app upgrade that's of a newer release than the on on the system
partition. If the system app had a database upgrade and this happened,
you might be in trouble.

Luckily it appears no one ever does this in code. You'd have to manually
get there doing:

adb uninstall -k updated.system.package

Change-Id: I3110fedf2d147975a0635c71898d985dd642a2c1
2010-09-01 14:10:36 -07:00
Kenny Root
9ee9274e5e Add null check for package settings
A few lines down "ps" is run through a null check, so apparently there
could be some screwy system conditions where this is encountered. And,
in fact, this was encountered through an updated system pacakge that
managed to delete the package from /system/app during testing. It left
the PackageSetting in mDisabledSysPackages which would cause a deference
of a null variable.

Change-Id: Ic7faca569abd16a87a8a69c20df08c11a274a001
2010-09-01 13:59:02 -07:00
Dianne Hackborn
2394c164a7 am ec438e14: am 361199b5: Add PackageManager API to get information about a provider component.
Merge commit 'ec438e1448ebc578ee5a4c4beb1e26292cdedd6e'

* commit 'ec438e1448ebc578ee5a4c4beb1e26292cdedd6e':
  Add PackageManager API to get information about a provider component.
2010-08-31 19:06:25 -07:00