Merge commit 'b4157a432cf791906d5b2f6d187f1767357a51bb' into gingerbread-plus-aosp
* commit 'b4157a432cf791906d5b2f6d187f1767357a51bb':
StrictMode: fix docs to actually compile and add a utility method.
Yes, this is a last minute public API change, but I'm already getting
a lot of inquiries about how to use StrictMode on a GB device but
targetting Eclair or Froyo. I'd like a simple answer involving
reflection, but the current API is too painful to use via reflection.
I imagine this will be a common request, and it's much easier for us
to write a little blog post about trying it out if there's an easy way
to use it with reflection.
Change-Id: I1f21aaac7e61e5e90d1e4facc0c787d8daf089b1
Merge commit '736f5ec476526f3431d81dec5fb695bdee27e21a' into gingerbread-plus-aosp
* commit '736f5ec476526f3431d81dec5fb695bdee27e21a':
Work on issue #3101415: Crespo apps seem to have their UID changed over time.
Merge commit 'feebaf35c0edaed87edc6eb33a33ad9df1a209d6' into gingerbread-plus-aosp
* commit 'feebaf35c0edaed87edc6eb33a33ad9df1a209d6':
Don't crash on null Vibrator during reboot.
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>
We can't reliably detect when the key for an OBB is incorrect, so just
remove the mention in the documentation. It still returns an error, but
just not the most specific error.
Bug: 3091064
Change-Id: I70e506822f2178a0ac5e4617fe545b23ce0026f4
Merge commit '9facd2d0847691ae46108713d6a7dc9f51a62135' into gingerbread-plus-aosp
* commit '9facd2d0847691ae46108713d6a7dc9f51a62135':
StrictMode: link to designing for responsiveness ANR docs
Merge commit 'b4de3dca96b9ff18562062e181dcd8b83e641e45' into gingerbread-plus-aosp
* commit 'b4de3dca96b9ff18562062e181dcd8b83e641e45':
OBB: rearrange to be entirely asynchronous
Rearrange structure of MountService handling of OBBs to be entirely
asynchronous so we don't rely on locking as much. We still need the
locking to support dumpsys which has been improved to output all the
data structures for OBBs.
Added more tests to cover more of the error return codes.
Oh and fix a logic inversion bug.
Change-Id: I34f541192dbbb1903b24825889b8fa8f43e6e2a9
Previously a tight loop of StrictMode violations would still allocate
Exception objects and populate their stack frames, just to orphan them
later when checking the max-10-violations-per-loop constraint.
With this patch, we do that check _before_ allocating any memory.
Change-Id: Iae96aba33f8fcc6a8ec5838a231aecc08e95122d
The Linux kernel supports reporting "cold" battery health to sysfs.
Android framework has not implemented this and it defaults to "unknown"
This adds handling the cold battery health.
Change-Id: Idcc156aae6aabce73391081143f79d052edf332e
Merge commit '9934fa77efab362729d0d3cb8aa0bdcd31d63ead' into gingerbread-plus-aosp
* commit '9934fa77efab362729d0d3cb8aa0bdcd31d63ead':
Fix issue #3074745: Crash in system process
Merge commit 'd577cfd73a223279f9a5af698f55edd38a3fe4db' into gingerbread-plus-aosp
* commit 'd577cfd73a223279f9a5af698f55edd38a3fe4db':
Switch Looper back to using poll() instead of epoll().
Added a couple of micro-optimizations to avoid calling wake() unnecessarily
and reduce JNI overhead slightly.
Fixed a minor issue where we were not clearing the "next" field of Messages
returned by the MessageQueue so the Message would hold on to its successor
and potentially prevent the GC from collecting it if the message were leaked
somehow.
Change-Id: I488d29417ce0cdd7d0e447cda76ec978ef7f811c
Merge commit '407f625a9b8e356e765a5ec587c443af1f3aadb5' into gingerbread-plus-aosp
* commit '407f625a9b8e356e765a5ec587c443af1f3aadb5':
Add new API to find out whether external storage is removable.
This is implemented based on whether we are using the "nosdcard"
product. Needed to tweak aapt to allow use of the product attribute
with other resource definition tags besides strings.
Change-Id: I49922d23b52a34183a8e2f4d2515adaf1fc9149a
This makes it more future-proof and maintainable, not exposing the
internal bitpacking state.
The implementation is unchanged (the policy is still just an int we pass
around).
Also starts to introduce VmPolicy, for things which are process-wide,
not per-thread. As an initial user, make SQLite's Cursor finalization
leak warnings use StrictMode.
Change-Id: Idedfba4e965716f5089a52036421460b1f383725
Merge commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94' into gingerbread-plus-aosp
* commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94':
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
Merge commit '05105f7abe02b2dff91d6260b3628c8b97816bab' into gingerbread-plus-aosp
* commit '05105f7abe02b2dff91d6260b3628c8b97816bab':
Update OBB API to include callbacks