Commit Graph

17 Commits

Author SHA1 Message Date
Jeff Hamilton
68a5c9f3cf Add a way to get a string for an error code.
Change-Id: I133e974c656eb558349cbc3f9a2caf5b18c8fc3d
2010-10-26 14:09:48 -05:00
Sylvain Fonteneau
e2e4ea9ea8 Fixed NdefTag parcelable conversion methods.
Also removed call to obsolete openTagConnection() method which was crashing.

Change-Id: Iffd46bd5cad877bb3a82ede298e65ae98322dca9
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-25 08:55:36 -07:00
Nick Pelly
416d72f4b6 Document getPollBytes() and getActivationBytes().
No code change.

Change-Id: Ideb427b2684b9f9296abefb7c97eabc52db73ee0
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-24 22:03:04 -07:00
Nick Pelly
07f3bee2db Push Tag/NdefTag implementation details into the service.
Tag/NdefTag objects should just be simple data objects. Push the mapping of
internal tag type to public rawTarget/ndefTarget into Nfc Service.

This gives an oppurtunity to clean up some Tag/NdefTag API methods. Most
significantly, adding createMockTag() and createMockNdefTag() to help with
application testing.

There will probably be some more tweaking of the types/targets in
Tag/NdefTag to come, this commit makes that a lot easier.

Also:
- Introduce getActivationBytes() and getPollBytes(). These are just stubs
for NFC service to implement, we have feedback these are really important
to help identify NFC tags.
- Based on outside advice, remove 3B_PRIME (roll into 3B) and TOPAZ (roll
into 3A).

Change-Id: I3e6789c047f6ee5c298bf76c65e0885cf3c15d97
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-22 16:29:43 -07:00
Jeff Hamilton
da83f513ca Unhide some NFC APIs that are required for the Tag app.
Change-Id: Ic64e00476132dbf4644de5c465e06fe11a264508
2010-10-21 23:43:22 -05:00
Sylvain Fonteneau
a71354d766 Enable presence check at application level using
RawTagConnection.isConnected() method.

Also needs packages/apps/Nfc to be updated.

Change-Id: I726e88853e2c4b348f3b87b7574bc6eded7f5b7c
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-21 03:54:52 -07:00
Nick Pelly
7ea5c45e8d NFC settings cleanup.
Remove NFC settings from Settings.System. The NFC Service tracks them
internally using SharedPreference.

Revert back to enable()/disable()/isEnabled() - Tag discovery is the
only functionality NFC service performs right now so we don't need to
break it up more explicitly yet. enable/disable is the global NFC
on/off and later we'll add enableDiscovery(), enableTagEmulation(),
enableSecureElement() etc as needed.

Change-Id: Id5b23e89d4a29511835f509962842452075e56cb
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-21 03:54:51 -07:00
Sylvain Fonteneau
dd7341f775 Added missing implementation for NdefRecord.
Implemented constructor using a byte array to parse.
Added missing exception in method declaration, leading to update api/current.xml

Change-Id: I2660484aef1225e90c2f32a572041a2c3aecf288
2010-10-18 19:09:26 -07:00
Brad Fitzpatrick
afb082dba5 NFC: broadcast intent constants for adapter state change
These are @hide for now.  Sent by Iec9596a and used in Ief09a5a4

Bug: 3097279
Change-Id: Ie5dc05e33a98366fbe1767d19ac0253651abe862
2010-10-18 15:17:48 -07:00
Nick Pelly
fdf9086e24 Prevent use of NFC api if device is not featurized for NFC.
Change-Id: I8724cb947223b7b60814d0be51e1122123ebb98a
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-18 11:52:28 -07:00
Nick Pelly
e47150e933 Fix up NFC permissions.
The initial (vendor) implementation had 4 perms, replace with 1.

Requires no permissions:
- Viewing UID, type of discovered tags and cards.
- Viewing the NDEF message contents of NDEF formatted tags and cards.

Requires android.permission.NFC
- Get/Set the local tag "MyTag"
- Creating or using a RawTagConnection (transceive())
- Creating or using a NdefTagConnection (write()/read())

Change-Id: I1b585c7d91738bed6261277061a48cf7c939482a
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-18 10:04:40 -07:00
Sylvain Fonteneau
a926540d54 Implement methods introduced in draft #5 NFC API.
The API is implemented but still do not support muli-protocol tags.

Change-Id: I5cea3eec7b5b92e8e1106d4660e2400e4433e943
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-17 15:06:45 -07:00
Nick Kralevich
6df23609d4 range checking for tnf
Change-Id: Ie94acd598d3b8b349ffa98cef0f64ef8fa9f9612
2010-10-15 16:45:51 -07:00
Scott Main
c9f7890a20 Revise some javadocs for NFC; add package description
Change-Id: I60223e2ad24af98b3b16a74960365185096ae614
2010-10-15 15:27:16 -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
Nick Pelly
590b73bc5b NFC API revision round 2.
- 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>
2010-10-12 18:37:26 -07:00
Nick Pelly
dc993791fc New API stubs: NdefMessage and NdefRecord.
NDEF Messages and NDEF Record data classes.

Change-Id: I9b7114773281b0eb9680f595c95ac79943d2903b
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-04 17:56:23 -07:00