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>
Merge commit '2c1dab44834fb20deda9f380dae1bd7c1826b40b' into gingerbread-plus-aosp
* commit '2c1dab44834fb20deda9f380dae1bd7c1826b40b':
docs: fix typo; surface dev guide link in package description
Manual merge from Gingerbread.
This change adds a new window type for secure system overlays
created by the system itself from non-secure system overlays that
might be created by applications that have the system alert permission.
Secure views ignore the presence of secure system overlays.
Bug: 3098519
Change-Id: Id876736fd8bf332ff9a5428bde59f5268aa49c3a
Added new key maps for external keyboards. These maps are intended to
be shared across devices by inheriting the "keyboards.mk" product
makefile as part of the device's product definition.
One of the trickier changes here was to unwind some code in
MetaKeyKeyListener that assumed that only the low 8 bits of the meta key
state were actually used. The new code abandons bitshifts in favor
of simple conditionals that are probably easier to read anyways.
The special meta key state constants used by MetaKeyKeyListener
are now (@hide) defined in KeyEvent now so as to make it clearer that they
share the same code space even if those codes are not valid for KeyEvents.
The EventHub now takes care of detecting the appropriate key layout
map and key character map when the device is added and sets system
properties accordingly. This avoids having duplicate code in
KeyCharacterMap to probe for the appropriate key character map
although the current probing mechanism has been preserved for legacy
reasons just in case.
Added support for tracking caps lock, num lock and scroll lock and
turning their corresponding LEDs on and off as needed.
The key character map format will need to be updated to correctly support
PC style external keyboard semantics related to modifier keys.
That will come in a later change so caps lock doesn't actually do
anything right now except turn the shiny LEDs on and off...
Added a list of symbolic key names to KeyEvent and improved the toString()
output for debug diagnosis. Having this list in a central place in the
framework also allows us to remove it from Monkey so there is one less
thing to maintain when we add new keycodes.
Bug: 2912307
Change-Id: If8c25e8d50a7c29bbf5d663c94284f5f86de5da4
Merge commit '4fa7f4f4963568258a6b4179176de8386cb5d3db'
* commit '4fa7f4f4963568258a6b4179176de8386cb5d3db':
Really leave text selection mode when using the trackball.
Merge commit 'fda5b19c757645e957c2a224f269aefe39fb1e1c' into gingerbread
* commit 'fda5b19c757645e957c2a224f269aefe39fb1e1c':
docs: fix typo; surface dev guide link in package description
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>
- Add the second half of the new NFC API: NfcAdapter, Tag, NdefTag,
RawTagConnection, NdefTagConnection.
- Add implementations for all of the new NFC API.
Change-Id: I8da9fd1d2971ed2c8b76f2a93f207fa9e305b0f6
Signed-off-by: Nick Pelly <npelly@google.com>
Conflicts:
Android.mk
CleanSpec.mk
core/java/android/app/ContextImpl.java
Merge commit 'd16f7588a88ba98c6c466ee31bb96bc1f9562a98' into gingerbread-plus-aosp
* commit 'd16f7588a88ba98c6c466ee31bb96bc1f9562a98':
DO NOT MERGE: Private API to pass the selected tab through QuickContacts
* Properly wipe the thumbnail canvas before handing it to the app for
its contents to be drawn
* Provide a getView() method in DragThumbnailBuilder that allows
clients or subclasses to get at the associated view. This is
especially for clients that want to draw entire (sub)layouts as
the drag thumbnail, by overriding onDrawThumbnail(Canvas c)
like this:
// Override specifically for drawing a whole ViewGroup into
// the drag thumbnail canvas
@Override
public void onDrawThumbnail(Canvas c) {
getView().dispatchDraw(c);
}
Change-Id: Ib43ddd7cf1d44faf2d7f6ba79f102bc3c7f14596
PBAP profile is associated with HFP profile. Disconnect PBAP
profile while disconnecting HFP profile. We ever never doing this
and were expecting the remote end to do it. So when the user
disconnects a headset, we will end up with the ACL link still up
because PBAP has not been disconnected.
This is little bit of a hack till PBAP profile is converted to
use the new profile APIs.
Change-Id: I04821daae6588955fbfea01472e6a1b6f9212608