423 Commits

Author SHA1 Message Date
Jean-Baptiste Queru
9286cfe501 merge 83fdc69e from gingerbread - do not merge
Change-Id: Ib1e9e12244a44f75a93d66142e71915de6386680
2011-01-14 18:33:51 -08:00
James Dong
9efe47374b Squash commits of the following patches, cherry-picked from other branch - do not merge.
o Prepare for publishing MediaMetadataRetriever as public API
  step one:
  o replaced captureFrame with getFrameAtTime
  o removed getMode

o Replace MediaMetadataRetriever.captureFrame() with MediaMetadataRetriever.getFrameAtTime()
  as part of the preparation for publishing MediaMetadataRetriever as public Java API

o Remove captureFrame from MediaMetadataRetriever.java class
  It has been replaced by getFrameAtTime() method

o Replace extractAlbumArt() with getEmbeddedPicture() in MediaMetadataRetriever.java

o Publish MediaMetadataRetriever.java as public API
  o Removed setMode() methods and related mode constants
  o Removed some of the unused the metadata keys
  o Updated the javadoc
  o part of a multi-project change.

bug - 3309041

Change-Id: I2efb6e8b8d52897186b016cb4efda6862f5584c4
2011-01-12 17:12:46 -08:00
Chris Tate
9b1bd2c7d1 am 6ec91731: DO NOT MERGE : Permission fix: don\'t require BACKUP perm for self-restores
* commit '6ec91731cbf6ee1a9a914d341fab9567d1599018':
  DO NOT MERGE : Permission fix: don't require BACKUP perm for self-restores
2011-01-09 13:04:01 -08:00
Chris Tate
6ec91731cb DO NOT MERGE : Permission fix: don't require BACKUP perm for self-restores
The public API is not supposed to require the BACKUP permission in order
for an application to restore its own last-known-good backup data.  However,
as currently implemented, BackupManager.requestRestore() [the public API
in question] depends on private Backup Manager methods that *do* enforce
that permission.  The net result is that the method cannot be successfully
used by third party applications: it will throw an exception if attempted.
This CL restructures the permission checking involved.

First, the underlying beginRestoreSession() operation can now be passed a
'null' transport name; if this is done, then the restore session is begun
on whatever the currently-active transport is.  Looking up the name of the
active transport is one of the permission-guarded actions that was required
with the initial implementation.

Second, a package name can now be passed to beginRestoreSession().  If
this is done, then the restore session can only be used to perform a
single-package restore of that one application.  The BACKUP permission is
not required if the caller is tying the restore to its own package name.

In combination, these changes permit BackupManager.requestRestore() to
function without the calling app needing to hold any special permission.
The no-permission case is intentionally quite narrow:  the caller must
hold the permission unless they both (a) pass 'null' for the transport
name, thereby accepting whatever the currently active transport is, and
(b) pass their own package name to restrict the restore session only
to their own app.

External bug http://code.google.com/p/android/issues/detail?id=10094
Internal bug 3197202

(Cherrypick from master to gingerbread)

Change-Id: Ie20b0bd2420345ce6eda178f854680b558f6372a
2011-01-09 12:49:47 -08:00
Dianne Hackborn
95db1cfc74 am cd23823d: Merge "Fix issue # 3227963: SecurityException: Neither user 10023 nor..." into gingerbread
* commit 'cd23823d4f533431c76baa104eb50b7803b3b391':
  Fix issue # 3227963: SecurityException: Neither user 10023 nor...
2011-01-09 11:44:17 -08:00
Dianne Hackborn
690d20bb53 Fix issue # 3227963: SecurityException: Neither user 10023 nor...
...current process has android.permission.WAKE_LOCK

When updating a system app, we would actually uninstall the package
of the system app, which also meant removing its uid...!  It was just
luck that we would get the same uid when installing the update after
that.  During that time, if anyone tried to do anything related to
that uid, it would be unknown.

This change tweaks how we go about replacing system apps by making
it more like normal apps -- to make this work, if we need to disable
the system app, we generate a new PackageSetting from the current
system app and replace it into our data structures, so we can update
that without trashing the current correct information about the (still
actually there) system app.

Also fixed a problem where we were not killing the currently running
app before installing, like we do when updating a normal application.

And fixed a problem where we were not deleting the /data .apk when
uninstalling a system app update.

And added a new option to the "pm" command to clear the data associated
with an app.

Change-Id: I0e879677849aa42950a3c360bf78ad820e87674b
2010-12-22 16:31:44 -08:00
Dianne Hackborn
78e9f4cbae am e4a59519: Fix issue #3154576: battery stats checkin should include UID -> packages+ map
* commit 'e4a5951925f16f18dae91ed65567e96528f17fee':
  Fix issue #3154576: battery stats checkin should include UID -> packages+ map
2010-12-13 14:37:09 -08:00
Dianne Hackborn
e4a5951925 Fix issue #3154576: battery stats checkin should include UID -> packages+ map
Includes some other small fixes to battery collection and a few
other things.

Output of package info looks like this:

5,0,i,uid,1000,com.android.settings
5,0,i,uid,1000,com.android.providers.subscribedfeeds
5,0,i,uid,1000,com.android.providers.settings
5,0,i,uid,1000,com.android.server.vpn
5,0,i,uid,1000,android
5,0,i,uid,1000,com.android.systemui
5,0,i,uid,1000,com.google.android.backup
5,0,i,uid,1001,com.android.phone
5,0,i,uid,1001,com.android.providers.telephony
5,0,i,uid,1022,com.android.nfc
5,0,i,uid,10021,com.google.android.location
5,0,i,uid,10021,com.google.android.syncadapters.calendar
5,0,i,uid,10021,com.google.android.gsf
5,0,i,uid,10021,com.google.android.syncadapters.contacts
5,0,i,uid,10026,com.android.providers.downloads.ui
5,0,i,uid,10026,com.android.providers.media
5,0,i,uid,10026,com.android.providers.drm
5,0,i,uid,10026,com.android.providers.downloads
5,0,i,uid,10032,com.android.launcher
5,0,i,uid,10039,com.google.android.gm
5,0,i,uid,10041,com.google.android.gallery3d
5,0,i,uid,10049,com.android.providers.calendar

Change-Id: I9e38f254eef146339113ad270f5c6e8b60fb7a1d
2010-12-13 14:31:40 -08:00
Jean-Baptiste Queru
40eade14bb Merge from open-source master
Change-Id: Ie25bbfbf12fa8902d9ba82cf2d4ed4c60d439e39
2010-12-02 07:55:06 -08:00
Ali Utku Selen
1c3274ca12 Fix crash by "adb shell pm list permissions -f|-s"
pm command makes the assumption that every permission should
contain android:description and android:label attributes while
they are not mandatory. If a permission does not contain these
two attributes, we get "android.content.res.
Resources$NotFoundException: String resource ID #0x0"
followed by a NPE when using -f or -s options.

With the following change, users will get "null" in output for
respective fields.

Change-Id: I4e7f407592fa071abdab1d979775f46ec27dc9d2
2010-11-30 16:22:56 +01:00
Jean-Baptiste Queru
0d7c66b3a5 Merge 42c94791 from open-source master
Change-Id: Id17a1a787b6d46c44ba39d628129a3a27f6d70be
2010-11-04 07:22:44 -07:00
Chih-Wei Huang
2978751310 Fix the animation disappeared issue
The animation movie disappears due to the incorrect logic of
commit c11f46259a1e8f4e7e58925aefd1ed9eaf57a7fc.

Change-Id: I9c0eac2bf2950fe20e931da367036ddf38d81f52
2010-11-03 15:33:00 +08:00
Kenny Root
faf53c0bf2 am 40763914: Merge "Exit immediately on some linklib failures" into gingerbread 2010-10-22 12:18:46 -07:00
Kenny Root
0332d1c5a5 Exit immediately on some linklib failures
If the library couldn't be printed to the string, installd should fail
early instead of trying to chmod() back to uninitialized stat struct.

Bug: 3121721
Change-Id: I8a3604954ae657a1e07c1ad8d5569aa80aff9e0a
2010-10-21 16:14:06 -07:00
Nick Kralevich
9a430d8c0e am 62d0970c: Merge "allow dumpstate to work for non-root users." into gingerbread
Merge commit '62d0970c82f9a2c17aea67379c207a3f17556c46' into gingerbread-plus-aosp

* commit '62d0970c82f9a2c17aea67379c207a3f17556c46':
  allow dumpstate to work for non-root users.
2010-10-21 11:50:55 -07:00
Nick Kralevich
77d87aa7ff allow dumpstate to work for non-root users.
Change-Id: Iaad4a097f5e09914842955dafbc0a09cc7a1db48
2010-10-21 09:14:14 -07:00
Andreas Huber
fb47487259 am b04f356d: Merge "Include the framework copy of the OpenMAX headers instead of referencing external/opencore." into gingerbread
Merge commit 'b04f356d86eec74217fca8e3b85d801c4fcaa678' into gingerbread-plus-aosp

* commit 'b04f356d86eec74217fca8e3b85d801c4fcaa678':
  Include the framework copy of the OpenMAX headers instead of referencing external/opencore.
2010-10-15 18:25:14 -07:00
Jean-Baptiste Queru
36e7790b6b Merge a851d8d0 from gingerbread
Change-Id: Iea0e3fa1662d6326ab337821fe52a65a9dfd989a
2010-10-15 17:02:57 -07:00
Andreas Huber
b04f356d86 Merge "Include the framework copy of the OpenMAX headers instead of referencing external/opencore." into gingerbread 2010-10-15 14:58:54 -07:00
Andreas Huber
a4f391c9bf Include the framework copy of the OpenMAX headers instead of referencing external/opencore.
Change-Id: I762f59acf5e1f770e4d7c2d89af362bfffebefa6
related-to-bug: 3101573
2010-10-15 13:31:29 -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
Kenny Root
0689b60b86 am 54e01e0f: Merge "Symlink application lib directory when on SD card" into gingerbread
Merge commit '54e01e0f980cfb78153d5481f7e67cef90416174' into gingerbread-plus-aosp

* commit '54e01e0f980cfb78153d5481f7e67cef90416174':
  Symlink application lib directory when on SD card
2010-10-07 17:41:05 -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
Mathias Agopian
bba3b8efbe am 19058877: Merge "refactored screenshot code" into gingerbread
Merge commit '19058877df9bf94f197a72855f810f7f6bf8d068' into gingerbread-plus-aosp

* commit '19058877df9bf94f197a72855f810f7f6bf8d068':
  refactored screenshot code
2010-10-04 20:06:51 -07:00
Mathias Agopian
9fa7926bea am b9aacfdf: Merge "new screencap command" into gingerbread
Merge commit 'b9aacfdfb014cc0299f7999d2a8940cd60a4cc59' into gingerbread-plus-aosp

* commit 'b9aacfdfb014cc0299f7999d2a8940cd60a4cc59':
  new screencap command
2010-10-04 20:06:47 -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
Mathias Agopian
541d942000 new screencap command
this captures the framebuffer via surfaceflinger APIs and outputs
it to stdout. this is intended to be used by adbd.

Change-Id: I057e331d28dd92bd45a2c7037ab93e220bbd65f3
2010-10-04 17:35:34 -07:00
Chia-chi Yeh
a4f1eb3d77 am 9430f9d3: Merge "KeyStore: Update the parameters of generating master keys." into gingerbread
Merge commit '9430f9d37ec169ce0654bc8950adb66ac974b761' into gingerbread-plus-aosp

* commit '9430f9d37ec169ce0654bc8950adb66ac974b761':
  KeyStore: Update the parameters of generating master keys.
2010-10-01 16:16:17 -07:00
Chia-chi Yeh
9430f9d37e Merge "KeyStore: Update the parameters of generating master keys." into gingerbread 2010-10-01 15:34:43 -07:00
Fabrice Di Meglio
797bb4f83d am 73db5f02: Merge "Fix bug #3055578 ("adb shell bmgr list sets" generates NPE and cannot be run again when device has no account setup)" into gingerbread
Merge commit '73db5f02a1e1a3fc3514ddbff1c28e22fec3aa7a' into gingerbread-plus-aosp

* commit '73db5f02a1e1a3fc3514ddbff1c28e22fec3aa7a':
  Fix bug #3055578 ("adb shell bmgr list sets" generates NPE and cannot be run again when device has no account setup)
2010-10-01 11:32:56 -07:00
Fabrice Di Meglio
73db5f02a1 Merge "Fix bug #3055578 ("adb shell bmgr list sets" generates NPE and cannot be run again when device has no account setup)" into gingerbread 2010-10-01 11:30:50 -07:00
Fabrice Di Meglio
04686f4289 Fix bug #3055578 ("adb shell bmgr list sets" generates NPE and cannot be run again when device has no account setup)
- fix NPE
- code cleaning

Change-Id: Ieb30b666d995de8cbd27ee6d17e2178e7ea670f6
2010-10-01 11:16:10 -07:00
Chia-chi Yeh
2509976269 KeyStore: Update the parameters of generating master keys.
To improve the security, the parameters to generate the master key has
been changed. Special cares has been taken to prevent from permanent
damages of the existing data during the transition process.

Change-Id: I0c93f3de28a9fcd314932675ccfb65a7f11fa3ff
2010-10-01 01:42:55 +08:00
Chia-chi Yeh
ab6327bc9a am 20cb2310: Merge "KeyStore: Initialize IV correctly." into gingerbread
Merge commit '20cb2310cffb787c54016d50b9b5fe320fc5b025' into gingerbread-plus-aosp

* commit '20cb2310cffb787c54016d50b9b5fe320fc5b025':
  KeyStore: Initialize IV correctly.
2010-09-30 10:11:16 -07:00
Chia-chi Yeh
92cb1a026a am 2cbb56f9: Merge "KeyStore: Fix the return value when send() or recv() has an error." into gingerbread
Merge commit '2cbb56f961e4893a3bf7ded560d4bdbf45eabd01' into gingerbread-plus-aosp

* commit '2cbb56f961e4893a3bf7ded560d4bdbf45eabd01':
  KeyStore: Fix the return value when send() or recv() has an error.
2010-09-30 10:10:59 -07:00
Chia-chi Yeh
463d75b842 KeyStore: Initialize IV correctly.
Change-Id: Idbf207dfcc11b92e606cbf4fd3732ed7a8aa3416
2010-09-30 17:28:01 +08:00
Chia-chi Yeh
c741a2fe41 KeyStore: Fix the return value when send() or recv() has an error.
Change-Id: I20a63c76bd29b1a9f8959a6c4fe5a5b8a9a971b4
2010-09-30 15:17:58 +08:00
Andreas Huber
9d59186068 am 3a9cc8ce: Merge "Squashed commit of the following:" into gingerbread
Merge commit '3a9cc8cef49165d6b1a1eb37b15a0ae21b0042f7' into gingerbread-plus-aosp

* commit '3a9cc8cef49165d6b1a1eb37b15a0ae21b0042f7':
  Squashed commit of the following:
2010-09-28 11:35:22 -07:00
Andreas Huber
3a9cc8cef4 Merge "Squashed commit of the following:" into gingerbread 2010-09-28 11:27:33 -07:00
Hung-ying Tyan
2a36a778d3 am 68ef7f3c: Merge "Move SipService out of SystemServer to phone process." into gingerbread
Merge commit '68ef7f3c3a8deb0e14b0b6325876b23cecc191b3' into gingerbread-plus-aosp

* commit '68ef7f3c3a8deb0e14b0b6325876b23cecc191b3':
  Move SipService out of SystemServer to phone process.
2010-09-27 16:29:33 -07:00
Hung-ying Tyan
7e54ef71db Move SipService out of SystemServer to phone process.
Companion CL: https://android-git/g/#change,70187
http://b/issue?id=2998069

Change-Id: I90923ac522ef363a4e04292f652d413c5a1526ad
2010-09-28 05:19:35 +08:00
Andreas Huber
c751eccad3 Squashed commit of the following:
commit 29a4d3effb05a2e074cb0693316ab1977baeb0b6
Author: Andreas Huber <andih@google.com>
Date:   Mon Sep 27 12:01:32 2010 -0700

    Fully working implementation of MPEG2TSWriter (for AAC and AVC sources).

    Change-Id: I8a32a47565b647bf6c078c520e39565e08ea0d84

commit f4dec4c3899f3be393508e180d6c07e249d3335e
Author: Andreas Huber <andih@google.com>
Date:   Mon Sep 27 10:36:31 2010 -0700

    More reliable identification of MPEG2 transport streams. Don't keep scanning forever in case the stream does not have both audio and video tracks.

    Change-Id: Icc5b4e8be145b2805e8776559546a6818342aea7

commit 4fe3cc942f9b3d3cf54138b828c41214aa916dd2
Author: Andreas Huber <andih@google.com>
Date:   Mon Sep 27 08:23:39 2010 -0700

    test code

    Change-Id: I16560a17661407d06497f99ff88230724bb898af

commit 64d988b24f49f179a90fa677be11c823959e734b
Author: Andreas Huber <andih@google.com>
Date:   Thu Sep 23 14:42:52 2010 -0700

    First shot at supporting writing to an MPEG2 transport stream.

    Change-Id: Ie537939a99fa3ddc0c7661c47c18277584817c74

Change-Id: If78fd034af8f6e8ceac8dbeff96d5ecb3f6b96dc
2010-09-27 12:04:43 -07:00
Dianne Hackborn
deaa8ff1b1 am a7ef18fc: Merge "Some debugging support." into gingerbread
Merge commit 'a7ef18fca50d0db99a161d8c7e2d8979f0445503' into gingerbread-plus-aosp

* commit 'a7ef18fca50d0db99a161d8c7e2d8979f0445503':
  Some debugging support.
2010-09-24 15:32:51 -07:00
Dianne Hackborn
f123e49bf0 Some debugging support.
- New feature to "am monitor" to have it automatically launch
  gdbserv for you when a crash/ANR happens, and tell you how to
  run the client.

- Update dumpstate to match new location of binder debug logs

- Various commented out logs that are being used to track down
  issues.

Change-Id: Ia5dd0cd2df983a1fc6be697642a4590aa02a26a5
2010-09-24 13:11:55 -07:00
Andreas Huber
a1c7b096df am 6d8fae72: Merge "Instead of just writing one track to the .mp4 file, write all of them (at most 1 video and 1 audio track). Also support httplive URIs in the stagefright commandline tool." into gingerbread
Merge commit '6d8fae722cfb2833dd542b2a5e613582a9096fc6' into gingerbread-plus-aosp

* commit '6d8fae722cfb2833dd542b2a5e613582a9096fc6':
  Instead of just writing one track to the .mp4 file, write all of them (at most 1 video and 1 audio track). Also support httplive URIs in the stagefright commandline tool.
2010-09-24 11:09:33 -07:00
Andreas Huber
3ac01190a7 Instead of just writing one track to the .mp4 file, write all of them (at most 1 video and 1 audio track). Also support httplive URIs in the stagefright commandline tool.
Change-Id: I67b287cf76546191f398939aabe4480d9e79a948
2010-09-24 10:09:00 -07:00
Andreas Huber
19fe783d83 am 37155854: Merge "Proper sync-frame detection for sources that don\'t already provide it." into gingerbread
Merge commit '37155854b4d9ca405e5c41c4ab271006a4716193' into gingerbread-plus-aosp

* commit '37155854b4d9ca405e5c41c4ab271006a4716193':
  Proper sync-frame detection for sources that don't already provide it.
2010-09-24 08:27:33 -07:00
Andreas Huber
37155854b4 Merge "Proper sync-frame detection for sources that don't already provide it." into gingerbread 2010-09-24 08:17:20 -07:00
Dianne Hackborn
8952a4488e am 287952c3: Fix issue #3022508: Crash during media scan
Merge commit '287952c35e148811c106bc0f5036eabf20f71562' into gingerbread-plus-aosp

* commit '287952c35e148811c106bc0f5036eabf20f71562':
  Fix issue #3022508: Crash during media scan
2010-09-23 16:04:23 -07:00
Dianne Hackborn
287952c35e Fix issue #3022508: Crash during media scan
Don't kill processes for excessive wake lock use, even if they
are in the background, as long as they have running services.

Also fix some problems with this, such as not noting the kill
in battery stats.

And add killing of processes for cpu usage as well, along with
some optimizations to computing CPU usage.

And fix BatteryWaster to be better behaving for testing these
cases.

Add new "monitor" command to am to watch as the activity manager
does stuff (so we can catch things at the point of ANR).

Finally some miscellaneous debug output for the stuff here, as
well as in progress debugging of an ANR.

Change-Id: Ib32f55ca50fb7486b4be4eb5e695f8f60c882cd1
2010-09-23 15:59:28 -07:00