• Home
  • History
  • Annotate
  • only in /frameworks/base/core/java/android/nfc/
History log of /frameworks/base/core/java/android/nfc/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2bf6529bf8f81d1b9f0ff103f12d004937d0f59f 20-Nov-2014 Martijn Coenen <maco@google.com> Merge "Verify NFC permission immediately on API calls." into lmp-mr1-dev
d8bcfbadf7037dd2574312a3bfa04dd70d967166 14-Nov-2014 Martijn Coenen <maco@google.com> Verify NFC permission immediately on API calls.

Bug: 18358968
Change-Id: I648494e6435e107337e0c5bc4c6328774f9a54be
NfcAdapter.aidl
fcActivityManager.java
56f299b87a891db38691cc0260f761c3ce8ef9ac 31-Oct-2014 Andres Morales <anmorales@google.com> Add UserHandle to BeamShareData

Allows NfcService to start the beam transfer
process in the correct user.

Bug:17966846
Change-Id: Ie98c98e763f0c2eabf11afda645c421b0332a2f6
eamShareData.java
fcActivityManager.java
258d222152a410341ddad045ce92e57dd7ab454e 07-Oct-2014 Andres Morales <anmorales@google.com> Fix build, previous commit failed to remove an import

Bug:17883273
Change-Id: I6ef422eae83fb8b44279f1bf5a811858b791afa7
NfcAdapter.aidl
052690540e2bccfebe586caf8d0fa843afb9a137 07-Oct-2014 Andres Morales <anmorales@google.com> Remove dead NFC unlock code from fw/base

Bug:17883273
Change-Id: I214d141b0b9d83b5698f596087fabb1f30543606
NfcLockscreenDispatch.aidl
0a094c61bc1150585af3e60be7de3a5b17fa5573 26-Sep-2014 Martijn Coenen <maco@google.com> Merge "Add hidden API to disable NFC (optional persist)." into lmp-dev
56a3e67433fe1d6649c7665d58e913e784a0ea1c 24-Sep-2014 Martijn Coenen <maco@google.com> Add hidden API to disable NFC (optional persist).

Bug: 17298769
Change-Id: I1fa59592a34f1207731dc75d2e548b3e614d94f5
fcAdapter.java
5e991a129c308805da25957d9f5bf1bab8bcb60d 17-Sep-2014 Martijn Coenen <maco@google.com> Upper-case incoming AIDs.

This fixes scenarios where different services
register the same AID in a different case, and
we don't see any conflict.

Bug: 16517161
Change-Id: I610b585ce7d57b4e32c21004a1d4c50e1133986a
ardemulation/AidGroup.java
ardemulation/ApduServiceInfo.java
9ed2d5f7460973409e44018f5fa7b3456db1e658 16-Sep-2014 Martijn Coenen <maco@google.com> Merge "Fix static AID prefix registration." into lmp-dev
0985fb6c428e75c083e930f895695ee4e9cbb4cb 16-Sep-2014 Martijn Coenen <maco@google.com> Fix static AID prefix registration.

Bug: 16517161
Change-Id: Ibaddf8720907f1d28d44231d927f538628bbf9d0
ardemulation/ApduServiceInfo.java
7e25a504d40f2fdd7eb9430eb581d7c07fc1d797 16-Sep-2014 Martijn Coenen <maco@google.com> Merge "AID prefix registration." into lmp-dev
9c4f400aac00b1cdc665bece0c1315fccaa86d8b 09-Sep-2014 Andres Morales <anmorales@google.com> Add hidden API for pausing and resuming NFC polling.

Bug:17401266
Change-Id: Icce34787fc89dc33445f6c36f40f669a8b9b2f92
NfcAdapter.aidl
fcAdapter.java
826a73b83b7f05ff92e51a2880fb4a75de08a9d1 05-Aug-2014 Martijn Coenen <maco@google.com> AID prefix registration.

Bug: 16517161
Change-Id: I4e008b84fd1372b17a98437ec8a6b71c33d7cd05
NfcCardEmulation.aidl
ardemulation/AidGroup.java
ardemulation/ApduServiceInfo.java
ardemulation/CardEmulation.java
b59d35c16d55dda03622b24d90ac57773086e1fd 19-Aug-2014 Andres Morales <anmorales@google.com> Remove old NFC unlock api

Bug: 16401635
Change-Id: I667d91c2346355ed0a2115644e6192f5f208e288
NfcAdapter.aidl
fcAdapter.java
f9a97942e1b530cb87a8d7b28551889bc438a744 15-Aug-2014 Andres Morales <anmorales@google.com> Fix issue where unlock handlers are not properly updated

If an unlock handler already exists, we need to try
to update the tech mask for it. Don't permit unlock
handlers with no tech mask.

Bug: 17054331
Change-Id: I54a885d28bdd8ce41d8646d968621c7d6abc9387
NfcAdapter.aidl
fcAdapter.java
11d2e53dc0d2682f66f8dcbd8f0ad52432cb4aa7 23-Jul-2014 Andres Morales <anmorales@google.com> NFC Unlock api changes

Bug: 16401635
Change-Id: I994bd80be40052c2f894199bb44ebbde40077f27
NfcAdapter.aidl
NfcUnlockHandler.aidl
fcAdapter.java
ag.java
92b4b3c64ddbec9d10b631e03f0fbba225ca9057 30-Jul-2014 Andres Morales <anmorales@google.com> Revert "NFC Unlock api changes"

This reverts commit 9fef5fbcd6d47ef86823b3a2d82d34801f9be335.

Change-Id: Idabe1c2901e0e26d38f84583308f69804ab2c1c3
NfcAdapter.aidl
NfcUnlockHandler.aidl
fcAdapter.java
ag.java
131197aa6e6b0ae91fefe4bb5f39fffb780997c5 23-Jul-2014 Andres Morales <anmorales@google.com> NFC Unlock api changes

Bug: 16401635
Change-Id: I138a9aa0bb156982b6c7656c51a1e2194776e4ed
NfcAdapter.aidl
NfcUnlockHandler.aidl
fcAdapter.java
ag.java
29c2e3797a6c397fa7812bc4cf167a72dde28faa 29-Jul-2014 Martijn Coenen <maco@google.com> Make some NFC APIs @systemAPI.

Change-Id: I12e292563a517211e4fae7a1f64021758f396d1a
fcAdapter.java
d92c1689748b4630964f1ecf87e56de4b0aa7396 03-Jul-2014 Martijn Coenen <maco@google.com> Add API to query for AID prefix support.

For future devices which may support
registering AID prefixes. Get the API in for now,
the actual implementation is pretty simple and
will follow later.

Change-Id: I6c16dae9a4dbc0f9cd84bdb61a4de93cffd278ec
ardemulation/CardEmulation.java
b92dc6b013f4637bc29b09b9360b37810771ad1b 02-Jul-2014 Martijn Coenen <maco@google.com> Clean up dynamic AID XML parser.

<aid-group> should be generated and parsed
in its own object.

Change-Id: I70f4511a682c66f8d11b7797a0f171cda24cc617
ardemulation/AidGroup.java
b51441163fc4c493cddce08f5418021a31d0a719 02-Jul-2014 Martijn Coenen <maco@google.com> Move AID validation to CardEmulation.

More logical place since it's a generic utility
function.

Change-Id: I3381f10d6720e415d091dbd475ef0df8733e7e75
ardemulation/AidGroup.java
ardemulation/ApduServiceInfo.java
ardemulation/CardEmulation.java
dbedb4cc0f6c64705c16396bdd34445dd8191cad 02-Jul-2014 Martijn Coenen <maco@google.com> Add new IPC for direct Beam invoke.

Used by BeamShareActivity when Beam is invoked
through the share menu. Also made these IPCs
one-way as they can run asynchronously.

Bug: 15939863
Change-Id: I7d048947c96c697e6b04bbda2ec3fbf28cccc29b
NfcAdapter.aidl
fcAdapter.java
1bfc3d624925c2b6e0928e26cf0660aee0a05ddf 27-Jun-2014 Martijn Coenen <maco@google.com> Validate AIDs when registered.

Change-Id: Ib7140c30a8a7587f1809f529d3303e69933bb245
ardemulation/AidGroup.java
ardemulation/ApduServiceInfo.java
d8cf53f87d1416613aa34cfb28f5042033e3299c 20-Jun-2014 Andres Morales <anmorales@google.com> Make unlock api take String instead of int codes

int code method not exposed to third parties

Change-Id: I18ad0703be9d06664db3fd00a6435f789979fe73
fcAdapter.java
ag.java
3b33fd283c32a8fb707a23d25f3f3cf13e8b046f 20-May-2014 Andres Morales <anmorales@google.com> Framework changes to support NFC trustlet.

Adds a system-only ability to register for receiving
tags from NfcService at the lockscreen.

Change-Id: I4b50941031e8d1f40ebb6314211226e70a2ad187
NfcAdapter.aidl
NfcLockscreenDispatch.aidl
fcAdapter.java
df48db3c7cab1e39ffe16738c070644c1ef66782 20-May-2014 Martijn Coenen <maco@google.com> Address HCE API review comments.

Remove AidGroup from public APIs.

Bug: 15089341
Change-Id: Ia8e038a12891abc6f1a8e82dbf30b8952e0b1fd7
ardemulation/AidGroup.java
ardemulation/CardEmulation.java
62b25a5bf0750483f36ac79c88177ee2ab630f8e 20-May-2014 Andres Morales <anmorales@google.com> Revert "Adding INfcUnlockSettings and NfcUnlock interface class."

This will be re-added as a Trustlet in a subsequent CL.

This reverts commit 38a7ed05f8fed0aa81f7214d827875f9876ffbe1.

Change-Id: I5aa36df42a7751f165b4ef184e0cda57e5568b59
NfcAdapter.aidl
NfcUnlockSettings.aidl
fcAdapter.java
fcUnlock.java
2f6f3a0181b008f58b18804b749d5ddf1ba73bc8 26-Apr-2014 Martijn Coenen <maco@google.com> HCE/SE foreground support.

Allow apps to tell the OS they prefer a specific
CardEmulation service to handle a transaction
whenever they are in the foreground.

Change-Id: I8489ba6018f62164ed7e3504f31c8d09accf494e
NfcCardEmulation.aidl
ardemulation/AidGroup.java
ardemulation/ApduServiceInfo.java
ardemulation/CardEmulation.java
aa1492d1d8c5f80e074faacb83905bd07487975d 11-Apr-2014 Martijn Coenen <maco@google.com> Dynamic AID registration APIs for HCE.

Adds a set of APIs that allows applications
to dynamically register and unregister AID groups
for HCE and Secure Element based services.

Change-Id: I08e9423dff405955cb725c87423c953a7dbe5c72
NfcCardEmulation.aidl
ardemulation/AidGroup.aidl
ardemulation/AidGroup.java
ardemulation/ApduServiceInfo.java
ardemulation/CardEmulation.java
ae2a35baf41290df626a17ba12cf1df6cb006a16 06-Mar-2014 Martijn Coenen <maco@google.com> am 4d328a79: am a43f7cb0: am 1507c18f: am 29e55bef: Merge "NFC: getNdefMessage() should throw exception if no tag in field."

* commit '4d328a79bdee417c1248660b1c33b5cd86dbd814':
NFC: getNdefMessage() should throw exception if no tag in field.
a77cf8735432daddb233164f41103a0ff38408bb 25-Feb-2014 John Spurlock <jspurlock@google.com> Merge "Tabs -> spaces in frameworks/base."
6924c4ef8db3ffd80b35f2b736b7ea9577148e9e 25-Feb-2014 Martijn Coenen <maco@google.com> Fix NFC docs breakage.

Change-Id: I680dc7974316c77cb1835b5a81f30e6961ba3c49
fcAdapter.java
8a985d24ce9a38f40ed88fecbdcd0e75e3a68f44 25-Feb-2014 John Spurlock <jspurlock@google.com> Tabs -> spaces in frameworks/base.

Change-Id: I5a84e8e93ac99b5ed0212b37bf66efa5e53864be
defRecord.java
7fe9fa163ccd2ec34cbf533be4422aa66356431f 30-Jan-2014 Martijn Coenen <maco@google.com> Add an API to manually invoke Android Beam.

Activities can call NfcAdapter.invokeBeam() to
manually invoke the Beam animation. Any NFC tap
is then enough to complete the transaction.

Also, added NdefRecord convenience method for
creating Text records.

Bug: 5134061
Change-Id: Ia9df360d1d7e8451157c85a6d12f2a4eec924960
NfcAdapter.aidl
defRecord.java
fcActivityManager.java
fcAdapter.java
266e0a387123773538d7768a63d37793500169a1 02-Nov-2012 Mathias Jeppsson <mathias.jeppsson@sonymobile.com> NFC: getNdefMessage() should throw exception if no tag in field.

According to documentation, an TagLostException should be thrown, if
the tag has been moved out of field when reading NDEF message.

Change-Id: Ib7e485ed442027fdebd5bc7a46101fbca0c88bdb
ech/Ndef.java
3e4b665bc607c81ccc018d753122a363dd95159b 13-Dec-2013 Andres Morales <anmorales@google.com> Adding accessor for integer tech codes to Tag

Change-Id: I02c272acc9744756677afa8a9d1dca7f1e63ca50
ag.java
38a7ed05f8fed0aa81f7214d827875f9876ffbe1 15-Nov-2013 Andres Morales <anmorales@google.com> Adding INfcUnlockSettings and NfcUnlock interface class.

Change-Id: Ie55a5d4bb58c2944952fc84cce32d3573a3a1a22
NfcAdapter.aidl
NfcUnlockSettings.aidl
fcAdapter.java
fcUnlock.java
6090995951c6e2e4dcf38102f01793f8a94166e1 19-Nov-2013 John Spurlock <jspurlock@google.com> Remove unused imports from frameworks/base.

Change-Id: Ia1f99bd2c1105b0b0f70aa614f1f4a67b2840906
ech/Ndef.java
ech/NdefFormatable.java
f180f30b0de7330c415eee0bac83b6e41242ad9b 14-Nov-2013 Martijn Coenen <maco@google.com> Add "urn:nfc" shortener.

As defined in the NFC Forum specification
"URI Record Type Definition". For some reason
0x23 wasn't added in the past, but it's present
in the specification.

Change-Id: If4ec2216fd53a31943f6de62aa1c69166f597616
defRecord.java
b38ad76a829f9bdbc27e86647de31a5ad19f117a 17-Oct-2013 Scott Main <smain@google.com> additional javadoc for NfcAdapter.ReaderCallback

Change-Id: I3cad8b43d53992bb3d53920abb510456ee72afb5
fcAdapter.java
35bf6288527b177a04100585321a1266f020004a 14-Oct-2013 Martijn Coenen <maco@google.com> NFC card emulation API docs.

Bug: 10550319
Change-Id: I3023639d728aa76af89d15e0491b86c7c641648e
ardemulation/CardEmulation.java
ardemulation/HostApduService.java
ardemulation/OffHostApduService.java
ech/NfcBarcode.java
eed43391c682f64d2a0ec9a74d03b0e3d4d5a709 26-Sep-2013 Martijn Coenen <maco@google.com> Fix crash in ApduServiceInfo parsing.

Bug: 10949100
Change-Id: I181734074b071179ea5637a070714643508bc64b
ardemulation/ApduServiceInfo.java
807fd0443564850bc69f229a282cbba990e1b656 18-Sep-2013 Martijn Coenen <maco@google.com> Merge "Validate AID format and length." into klp-dev
fca357877307f307934457165a91a1b11e0b6853 18-Sep-2013 Martijn Coenen <maco@google.com> Validate AID format and length.

Bug: 10817001
Change-Id: I7cb0d4f718c467d2fccb30068f383f8e71a4a39b
ardemulation/ApduServiceInfo.java
b523bfa64d9304ef22d563f81defa48b047c623a 12-Sep-2013 Martijn Coenen <maco@google.com> Rename FLAG_READER_NFC_KOVIO to FLAG_READER_NFC_BARCODE.

Bug: 10722206
Change-Id: I8b672cd7b9015e1ec88af96ef1fd0774d20b8d17
fcAdapter.java
58d2065984646a61145df285d1c77b68b1f700fb 06-Sep-2013 Martijn Coenen <maco@google.com> Add support for loading banners from HCE services.

Bug: 10262585
Change-Id: I08f06ce92dd9071dc8ad1390ce9a4b877b05827d
ardemulation/ApduServiceInfo.java
51b6322197da054715e53d02754bc81caa8fd456 04-Sep-2013 Martijn Coenen <maco@google.com> Remove legacy HCE APIs.

Bug: 10550349
Change-Id: Ie60942f9551e93bcfb597f7f2a5b9cc9bf21a11a
ardemulation/ApduServiceInfo.java
ardemulation/CardEmulationManager.java
ardemulation/HostApduService.java
f48416dede08b243c90738ec108a08041d7609c2 04-Sep-2013 Martijn Coenen <maco@google.com> Merge "Reader mode NFC API: move to callback model." into klp-dev
c85fb576b817aae2d853b6f5cb6effb924b892ed 03-Sep-2013 Martijn Coenen <maco@google.com> Add drawable for Apdu Services, fix build.

Change-Id: I7c138adb60b2efe19377b58b35360cd234628424
ardemulation/HostApduService.java
fb2f8337f6fca9809156ddbaf0a7fe468bc1329f 03-Sep-2013 Martijn Coenen <maco@google.com> NFC: @hide and remove abstract from processCommandApdu().

Replaced by new version with Bundle extras.

Bug: 10550349
Change-Id: If5f284c6d9b14ab32670ebc84881f459813b5b56
ardemulation/HostApduService.java
5b1e032ea7c06ab11d778264dd950009fcb93cc5 03-Sep-2013 Martijn Coenen <maco@google.com> Reader mode NFC API: move to callback model.

Using intents for reader mode doesn't work well for 2 reasons:
1) Intents are used to resolve, but in reader mode we already
know where to resolve to. Additionally, dispatching an intent
causes additional latency.
2) Using intents with foreground dispatch was tricky; for every
call to onNewIntent() with a new tag, there was a call to
onPause(), which effectively disabled reader mode again,
causing a discovery loop.

Instead, let the app register a callback, and call that when
we discover a new tag. Also, add new flag to disable platform
sounds, and to change the presence check delay.

Bug: 10360259
Change-Id: I8373543d6cf2f7ca73c9b3e42bb8b51e3ac48cac
AppCallback.aidl
NdefPushCallback.aidl
NfcAdapter.aidl
fcActivityManager.java
fcAdapter.java
52246087f4e2b5ad62b9cd6ea8c2cb58f624d4e7 30-Aug-2013 Martijn Coenen <maco@google.com> HCE API review.

Keeping some of the old stuff @hide until all
clients have upgraded.

Bug: 10550349
Change-Id: Id5de7ab74c9b38c179fd20bd4746d95b7df8f033
ardemulation/ApduServiceInfo.java
ardemulation/CardEmulation.java
ardemulation/CardEmulationManager.java
ardemulation/HostApduService.java
ardemulation/OffHostApduService.java
c3f0044abe657d3e6d9cd1f322b419abddeba20c 29-Aug-2013 Martijn Coenen <maco@google.com> Add an API for querying HCE service selection mode.

This allows applications to differentiate between
the case where another app is the default, or the
case where the selection mode is "Ask every time".

Also, parse new requireDeviceUnlock attribute in
ApduServiceInfo.

Bug: 10262585
Change-Id: Icac508fe00054132574731532c05a1138edb24f5
ardemulation/ApduServiceInfo.java
ardemulation/CardEmulationManager.java
ardemulation/HostApduService.java
c20ed2ff125fd23bed25df8172bf24db84c5a352 27-Aug-2013 Martijn Coenen <maco@google.com> Add NFC reader-mode API.

Allows applications to temporarily force the NFC controller
to only do tag discovery. This will allow Android applications
to read and interact with devices that employ HCE.

Bug: 10360259
Change-Id: I709ead9a26f8e6ae8582cc295d82bd896e7c5bba
NfcAdapter.aidl
fcActivityManager.java
fcAdapter.java
583fe9d22b21aa77fad3096bfdad3020d6088230 15-Aug-2013 Martijn Coenen <maco@google.com> NFC: Allow HostApduService to indicate transaction unhandled.

This will cause the OS to show UI that allows the user to pick
another application that could potentially handle the transaction.

Also, tweak processCommandApdu() method to take a Bundle to be more
future-proof.

Bug: 10262585
Change-Id: If9d060341b472fac0349f539c04b87e85fe79dfb
ardemulation/HostApduService.java
62c196abd217c2471dc23d8975f84727560bafb9 09-Aug-2013 Martijn Coenen <maco@google.com> NFC: always upper-case parsed AIDs.

Also added activity intent action for Tap&Pay settings.

Change-Id: I5648e1ded3b79a3363899d1cab8aec55842b3e22
ardemulation/ApduServiceInfo.java
38d3bb76967e115b81c9f804e4de9189adfd9680 08-Aug-2013 Martijn Coenen <maco@google.com> NFC: Unify ApduServiceInfo for on/off host.

Change-Id: I4f8bb441d7eb564da0486f3e8a1ac08dd18d0dc8
ardemulation/ApduServiceInfo.java
ardemulation/CardEmulationManager.java
d9b67633f6aabab190788dcf9c757fb24ce2629c 07-Aug-2013 Martijn Coenen <maco@google.com> Merge "NFC: @hide some APIs, add setDefaultForNextTap API."
d40f43c1256da5fc27beb0000b56f38e65c380c4 07-Aug-2013 Martijn Coenen <maco@google.com> NFC: @hide some APIs, add setDefaultForNextTap API.

Change-Id: I31efe4c96a62e6c3dcb984a885214e6df045c6c6
NfcCardEmulation.aidl
ardemulation/CardEmulationManager.java
89a8250e242ee1d0b5b853154723b448d732b356 03-Aug-2013 Elliott Hughes <enh@google.com> am 710f3e2c: am 60ae2617: Merge "If frameworks wants ASCII casing, it should explicity ask for it."

* commit '710f3e2cc6bc2cdc2f2cddb2190823ea31efd52a':
If frameworks wants ASCII casing, it should explicity ask for it.
a7397883de67d674970d91f86d46ccf637e5e543 31-Jul-2013 Martijn Coenen <maco@google.com> NFC: Host-based card emulation APIs.

- New INfcCardEmulation interface to allow apps to interface
with card emulation system.
- New BIND_NFC_SERVICE permission to prevent malicious apps
from binding to card emulation services.
- ApduServiceInfo is now in the framework.
- Added constants to Settings.Secure for storing defaults.
- Modified XML grammar a bit.

Change-Id: I56b3fa6b42eb5dc132c91c1386ab1e6bac779059
NfcAdapter.aidl
NfcCardEmulation.aidl
fcAdapter.java
ardemulation/ApduServiceInfo.aidl
ardemulation/ApduServiceInfo.java
ardemulation/CardEmulationManager.java
ardemulation/HostApduService.java
ardemulation/OffHostApduService.java
cb64d430627b71221c588ef5f23599dd34a89ee9 02-Aug-2013 Elliott Hughes <enh@google.com> If frameworks wants ASCII casing, it should explicity ask for it.

http://elliotth.blogspot.com/2012/01/beware-convenience-methods.html

Bug: https://code.google.com/p/android/issues/detail?id=58359
Change-Id: Iaab02e718a7be7bda22e626dca05d79bfd2a8fc4
defRecord.java
c3178e5f1c346ad5faa926a6765147840116f4a7 26-Jul-2013 Martijn Coenen <maco@google.com> Change XML-grammar for (Off)HostApduServices.

AIDs can now carry a category attribute. Clarified that
"OffHostApduService" is not bound to by Android, and may
be extended by offering service interfaces that are not
defined in the platform.

Change-Id: Idd0a3990beb927e8d81366013f53386fb46e3f9f
ardemulation/HostApduService.java
ardemulation/OffHostApduService.java
ardemulation/SeApduService.java
5eaa8970aa86fa32a6cbb47e0681000ed2d22c57 18-Jul-2013 Martijn Coenen <maco@google.com> First shot at (host-based) card emulation APIs.

HostApduService: convenience service class for implementing
a service that registers a set of ISO7816-4 AIDs and emulates
the corresponding application inside the service itself.

SeApduService: convenience service class for implementing
a service that registers a set of ISO7816-4 AIDs that reflect
applications installed on an embedded secure element or UICC. Contains
event hooks to allow the service to handle eSE/UICC events that
correspond to those AIDs.

Change-Id: I44191bd4abcbbe4f1fd36a9fd42639fe5c0cf496
ardemulation/HostApduService.java
ardemulation/SeApduService.java
a920f25fe55fc9afc7640902a200f19ce278588b 29-Jun-2013 Elliott Hughes <enh@google.com> resolved conflicts for merge of fca0f92e to stage-aosp-master

Change-Id: I4791f0ffa324a313b8390fbde6d8f82f716ecf74
d396a448b2e36e29598c954b64bfddef73f3fae0 29-Jun-2013 Elliott Hughes <enh@google.com> Switch frameworks/base over from @hidden Charsets to public StandardCharsets.

Bug: 3484927
Change-Id: I5d136d2ee629588538602766a182ae14ce5fc63c
defRecord.java
1fa2aff21bc4cb89a141828c2661530e6aa655dd 27-Feb-2013 Martijn Coenen <maco@google.com> Add direct NDEF push API.

Hidden for now. Also, modified callback that is called
from NfcService to pass all data in a single object
(BeamShareData). This avoids having to do multiple IPCs
at touch time.

Bug: 5134061
Change-Id: I235f608cef9935041b33b4b7a6980f109c15576c
eamShareData.aidl
eamShareData.java
NdefPushCallback.aidl
fcActivityManager.java
fcAdapter.java
7a6dfb2f7294bbfb5ebc4f937db97b659a447607 11-Dec-2012 Martijn Coenen <maco@google.com> Update NfcBarcode documentation for Kovio.

Change-Id: I4b6a452805c3dd68247dbe5493db14a263729615
ech/NfcBarcode.java
ech/TagTechnology.java
2e9f65f978397d112dbfb134d374588515bb644a 09-Jan-2013 Martijn Coenen <maco@google.com> Merge "Make NfcAdapter states public and fix build."
e55fe4f3bb19992d8dcfc5cb19528f9a52cdcbb1 09-Jan-2013 Martijn Coenen <maco@google.com> Make NfcAdapter states public and fix build.

Change-Id: Idb2dd5e524cda5e3c03d4f2689266fa03be4ea13
fcAdapter.java
8a9120f04ec0ef403e60e6225badab7a69bccf59 09-Jan-2013 Martijn Coenen <maco@google.com> Merge "Make NfcAdapter STATE_CHANGED intent action public."
4ba5eaf7f3b92656311f1ea1869d359729ba88e4 08-Jan-2013 Martijn Coenen <maco@google.com> Make NfcAdapter STATE_CHANGED intent action public.

Bug: 5141885
Change-Id: Ia357409a51fb45f1739bb37940fa746f94fa9056
fcAdapter.java
1360c555a4e060be30a7a6a7916449441c1bf646 08-Jan-2013 Martijn Coenen <maco@google.com> Don't IPC for every onPause() in NfcActivityManager.

The NfcService now contains additional code to make sure
that the registered NDEF callback corresponds to the package
running in the foreground. This allows us to stop calling
the NfcService on every onPause() to register the NDEF callback,
as NfcService itself will now detect that the app is no longer
in the foreground, and won't call the callback.

Bug: 5199662
Change-Id: Ibd0d21f8c7b76346238305a6684967263cb7d7e0
fcActivityManager.java
f74df47fc9aee3a274db006db5024892972a0c8a 03-Oct-2012 mike wakerly <mikey@google.com> NfcAdapterExtras: expose driver name.

Bug: 7276355
Change-Id: I65597f732c2ccb749f8fc5ef1793bacf5de8b592
NfcAdapterExtras.aidl
f8538594fe6ba6db3310da042597840601d78cda 25-Sep-2012 Martijn Coenen <maco@google.com> Fix build.

Bug: 7222958
Change-Id: I2f9ff988f09be6cd4be49bfb90750a46e63c2c14
ag.java
ech/NfcBarcode.java
8f862ef9f74f2d2ebf767c645ce39db8412dd08f 24-Sep-2012 Martijn Coenen <maco@google.com> Add NfcBarcode technology API.

Supporting only Kovio barcode technology for now.

Bug: 7222958
Change-Id: I63976da2db16b0a5d9ec746f1a0e83833e74e5a9
ech/Ndef.java
ech/NfcBarcode.java
ech/TagTechnology.java
32ac1e142c4a0f3529c49cde433ae5e22f84b1d6 06-Sep-2012 Martijn Coenen <maco@google.com> Fix NPE in NdefRecord parser.

Malformed Uri tags could cause this crash.

Bug: 7116323
Change-Id: I979d1512058f351df32dbd972b6ec5c108202da5
defRecord.java
a45746efadd11bb7dfab026fb3c81a25fae74ca4 19-Jul-2012 Jeff Smith <whydoubt@yahoo.com> Fix several cases of broken droiddoc syntax
external issue 35214

patch contributed by Jeff Smith <whydoubt@yahoo.com>

Change-Id: I70dcee88a140699bf3e1ab369bed6dcd2fdd3d83
defRecord.java
97e0a1c6f3b7ab8f0796931182f0343dd7e73782 25-Jun-2012 Scott Main <smain@google.com> docs: clean up javadoc code snippets, unescaped entities

Change-Id: Idc21caceccaaa2cc11a6c46b453b6a9b26164f34
fcAdapter.java
9be0105fbc56eb1b1813bb7c5fe258a144867a43 22-Jun-2012 Scott Main <smain@google.com> docs: fix several links

Change-Id: I89d9fd64dc22c90680bb05415cc966c255165af9
ackage.html
3b6ecf0ec1a6822577450908f46496cbe121202e 06-Jun-2012 Martijn Coenen <maco@google.com> Small NFC API docs addition.

Indicate that if the device does not support Bluetooth or WiFI,
calling the API is a no-op.

Bug: 6620788
Change-Id: Ib261e0e7855d0914e97803b3b808015b72f3a186
fcAdapter.java
2c10311a01a9414a8efcedb267a45289a1617888 15-May-2012 Martijn Coenen <maco@google.com> NFC API documentation.

Added docs for beam Uri push and added some sanity checks on params.

Change-Id: I7c43b71c8a9ca4f742933d2d5b9473e0e2451dd3
fcActivityManager.java
fcAdapter.java
abc43ddd8ae098de7a56afc55909f904cd933016 10-May-2012 Jesse Wilson <jessewilson@google.com> Rename Uri.normalize() to Uri.normalizeScheme().

Change-Id: I67839656c7c1c16a5376c9894d699d2bad3c7a5c
defRecord.java
3bba8d0457408421a6468f03bbb36e9ff32b81cf 10-Apr-2012 Sunil Jogi <sunil.jogi@nxp.com> Added NFC disable during phone shutdown

NFC was not disabled/deinitialized when phone shutdown. This patch
add NFC disable on phone shutdown which can complete any pending
NFC transaction before phone shutdown.

Change-Id: Id1e604be7c34adec8623a1e526d8ff99e18bf74b
NfcAdapter.aidl
fcAdapter.java
20e8dd9f9e7cff63c83e36a1761538a04c224cc1 13-Apr-2012 Martijn Coenen <maco@google.com> Unhide new Beam push APIs.

Also added support for multiple Uris, removed mimeType argument.

Change-Id: Iad2c4d0e36a174080d7bc9c9c8ab893f90231d02
NdefPushCallback.aidl
fcActivityManager.java
fcAdapter.java
5b4a57973c85afb2f5ec833dc2c202111399b871 05-Apr-2012 Martijn Coenen <maco@google.com> Merge "Make sure initial activity state is correct."
20fe5378d73a1c01f8d5a6d3c53c2b4802a0a680 05-Apr-2012 Martijn Coenen <maco@google.com> Make sure initial activity state is correct.

Change-Id: Ic6199b42e59afa06a0f38f866e2924b84cd234b3
fcActivityManager.java
d9966c4c21c9d3a49454b1267e43907e0256a414 05-Apr-2012 Martijn Coenen <maco@google.com> Merge "Patch to support MIFARE with SAK 0x01"
1d7e9062330a5a02247752de32a68ecbeba82783 04-Apr-2012 Nick Pelly <npelly@google.com> First cut at Bluetooth Beam

Change-Id: I37e5759515ff8779095b6d8adf5ad9c456fa8529
NdefPushCallback.aidl
fcActivityManager.java
fcAdapter.java
30bd284cca7540be3eba2e7874a2c69e051771ce 04-Apr-2012 Martijn Coenen <maco@google.com> Merge "Add API for querying extended length APDU support."
854e077555ce5b606c6a688dd5fd0594be02b9f8 02-Apr-2012 Martijn Coenen <maco@google.com> Document "disable default Beam" meta-data entry.

Change-Id: Icaa767ee37fcca08b1ff5143eb94cf8e66be840c
fcAdapter.java
fa98cf0573b813c8b1a880496d847d0d7183d05d 03-Apr-2012 Martijn Coenen <maco@google.com> Add API for querying extended length APDU support.

Bug: 5813943
Change-Id: Iffb415f318e095bde9ed6677b22613d210f8a39c
NfcTag.aidl
ech/IsoDep.java
72677c98bd8231374ff60a2dd48886446de99f1f 24-Nov-2011 Sunil Jogi <sunil.jogi@nxp.com> Patch to support MIFARE with SAK 0x01

Change-Id: Ic30c083bb43b37f90beefc0ff165ba2713635a7f
ech/MifareClassic.java
5eeee5e0bbf5aba0097a510b3e9dbb286b2b30cd 30-Mar-2012 Martijn Coenen <maco@google.com> Merge "Fix permission documentation."
6c65344fcf5aa1499dafe1cad1d1ba5c66293776 30-Mar-2012 Martijn Coenen <maco@google.com> Fix permission documentation.

It was incorrect in one case. Also removed obsolete
interface method.

Change-Id: I211fb57e3504e06ff09cf31857c89e2b0e93d679
NfcTag.aidl
ech/Ndef.java
47ece23651ac07338f3e4c01fc1c3c5fb7f50eb5 29-Mar-2012 Martijn Coenen <maco@google.com> Merge "Fix NDEF documentation to indicate the message may be null."
a032783241cbbed47ed05df32c56298ee0f9902b 29-Mar-2012 Martijn Coenen <maco@google.com> Fix NDEF documentation to indicate the message may be null.

The current NFC stack formats tags to the INITIALIZED state
as defined by NFC forum; in that state the tag has the
NDEF Capability Container, but does not contain any message
yet.

Tags in that state (correctly) return the NDEF technology,
but the documentation does not specify that the message
may be null.

Also, get rid of buggy getLastErrorCode and use
(cached) presence check value to determine if tag was
lost during read.

Change-Id: If4293428093024ba9cda5dd7c9979b8b06353234
NfcTag.aidl
ech/Ndef.java
0c1c1eb1c8bd4e23def9e65dfb26256a7cae098d 29-Mar-2012 Martijn Coenen <maco@google.com> Merge "Allow formatting a tag as NDEF without a message."
2976da0305367ac051d0fcae160bfdb0497b2750 29-Mar-2012 Martijn Coenen <maco@google.com> Allow formatting a tag as NDEF without a message.

Change-Id: I53a219eec17450b2d0ddc42556f0b930d9b34615
ech/NdefFormatable.java
8ce7a27770735791b5c38e4128f4ab9cee86bc43 21-Mar-2012 Nick Pelly <npelly@google.com> Use Application#registerLifecycleEvents() instead of a Fragment for Beam.

Fragments don't work as desired if called after life-cycle events
such as onDestory() or onSaveInstanceState().

The new approach doesn't work after onDestroy() either, but we can more
easily detect this now. For pre-JB apps, we will log an error, and for
JB and onwards we will throw.

Update documentation to make these rules clear, and to encourage
the use of a single Activity per API call, and to make the call
in onCreate().

Bug: 5199662
Bug: 5994691
Bug: 6034901
Bug: 6125297

Change-Id: Ib0dde6abfa44cd56c7ddc13ba0ad0e83bbe30058
NfcAdapter.aidl
fcActivityManager.java
fcAdapter.java
fcFragment.java
188cddb1d8c89749618401e371a7e7900cb58d6d 01-Feb-2012 Martijn Coenen <maco@google.com> Hidden API for setting p2p NFC modes.

Change-Id: I406bab36b441cf99b5b45f51701dbcbab588a9b0
NfcAdapter.aidl
fcAdapter.java
d3cb80d2af423eccdeef2697a1ca45eadb241988 27-Jan-2012 Nick Pelly <npelly@google.com> Fix doc bug.

Change-Id: Ib7361abb0461d4295e889c505dd45e3a40193451
defMessage.java
1f5badc1cb08f10ddf4b09aaaf34060a23999a51 24-Jan-2012 Nick Pelly <npelly@google.com> Add NdefMessage.getByteLength(), and more minor fixes:

Remove NdefMessage from dispatch(). It's already in the Tag.
/*package*/ cleanup
Fix sitemap after removal of NFCDemo

Change-Id: Ie1f6d9ea98144aa97f56bb709a33f5d0ef916e8b
NfcAdapter.aidl
defMessage.java
fcAdapter.java
ag.java
ech/BasicTagTechnology.java
c97a552023c3c71079b39092e80c9b44f25a789b 05-Jan-2012 Nick Pelly <npelly@google.com> Improve NDEF API's

o Add NdefRecord.toMimeType()
Maps the record to a MIME type
o Add NdefRecord.toUri()
Maps the record to a URI
o Add hidden NfcAdapter.dispatch()
Helps test the dispatch path.
o Modify createMime(), createUri() and createExternal():
Do not try and strictly follow RFC requirements for URI or MIME content
types. This just leads to heartbreak - the RFC requirements are too strict.
For example RFC1341 forbids the use of '.' in a MIME type, however this is in
common use in types such as "application/vnd.companyname". I think the best
approach is to only remove 'obvious' whitespace issues, and to convert
uppercase to lowercase as per Android guidelines.

Change-Id: Id686f5f3b05b2dceafad48e1cfcbdb2b3890b854
NfcAdapter.aidl
defMessage.java
defRecord.java
fcAdapter.java
6b5862d3b4d8d102991934500b664efce46995a5 13-Jan-2012 Martijn Coenen <maco@google.com> Remove LlcpPacket from public namespace.

This is a left-over, unused by the public API's.

Change-Id: I3ccccd58a6c52caeb476a6972126eb034a0ff917
lcpPacket.aidl
lcpPacket.java
2b072677538de979961b5bf527109fdab1713731 23-Dec-2011 Joe Fernandez <joefernandez@google.com> am 201469f5: am bb7f590a: Merge "docs: Add developer guide cross-references, Project ACRE, round 4" into ics-mr1

* commit '201469f54522436be79d4d6665721049bfc74320':
docs: Add developer guide cross-references, Project ACRE, round 4
3aef8e1d1b2f0b87d470bcccf37ba4ebb6560c45 20-Dec-2011 Joe Fernandez <joefernandez@google.com> docs: Add developer guide cross-references, Project ACRE, round 4

Change-Id: I1b43414aaec8ea217b39a0d780c80a25409d0991
fcAdapter.java
fcManager.java
ackage.html
eca6d909f7dd990c9a3226aa2f1ed1fa0cd250a2 20-Dec-2011 Nick Pelly <npelly@google.com> Merge "Rewrite NDEF parsing in Java, clean-up API."
a356bf1cd81614a94ef6c720998792480ade4c84 14-Dec-2011 Nick Pelly <npelly@google.com> Rewrite NDEF parsing in Java, clean-up API.

o Lots of documentation fixes.
o Add NdefMessage(NdefRecord ... records) ctor
o Add NdefRecord.createMime()
o Add NdefRecord.createExternal()
o Add toString(), equals() and hashCode() implementations
o Deprecate NdefRecord(byte[]) and NdefRecord.toByteArray()
o Remove framework dependency on libnfc_ndef.so
o Remove NfcAdapter.getDefaultAdapter(), its been deprecated a while

next step:
o Attempt to move NdefMessage -> Intent conversion into NDEF, and
make it CTS tested. This will ensure consistent NDEF -> Intent
mapping across all Android devices.

Change-Id: Ifed4910caa9a1d6bad32dbf0a507ab22bca35e22
ormatException.java
defMessage.java
defRecord.java
fcAdapter.java
23fc93a7c1e340e79642d3d0bf4b4658c8645c8e 28-Nov-2011 Martijn Coenen <maco@google.com> Fix NPE on mock NDEF tech operations.

Change-Id: Ib67bd03b6275fdb86a5d6dedc6c7e4fed07ef8b0
ag.java
ech/Ndef.java
cee040eb27b88d1d4daa544fbaafdf5c7dac6dbb 22-Nov-2011 Nick Pelly <npelly@google.com> Merge "Throw a nicer error message when using an invalid context to create Nfc"
b04cce0eb5917db436b7db39eb67c064df2e015a 22-Nov-2011 Nick Pelly <npelly@google.com> Throw a nicer error message when using an invalid context to create Nfc

This can happen when using getContext() instead of getTargetContext()
in an InstrumentationTestCase.

Bug: 5644274
Change-Id: I020a637c271e25bcf25ae2927fd878001d5fea0a
fcAdapter.java
fcManager.java
f955d057ddd232af4bd4a74075838dae298c7365 18-Nov-2011 Nick Pelly <npelly@google.com> am c6a0277b: am 63b7360e: Merge "Fix NPE on devices that don\'t have NFC." into ics-mr1

* commit 'c6a0277bca29359ec1aee123495065982d2eea7a':
Fix NPE on devices that don't have NFC.
a5193b24c1c944331f329eca1d4f85df3a024b1d 17-Nov-2011 Nick Pelly <npelly@google.com> Fix NPE on devices that don't have NFC.

We should return null instead of NPE.

Bug: 5622939
Change-Id: I802f4a99ea9f5e73453d5ea30da4e1d9fa279b9c
fcAdapter.java
34059a912520e6c145f18373c4300e4a567da89d 11-Nov-2011 Nick Pelly <npelly@google.com> am 4780228f: am 48b651cb: Merge "Changes for access control." into ics-mr1

* commit '4780228fb2476304e29ddf9a118c460ac4eb96ee':
Changes for access control.
bb951c893973691554f49d2e725985125f866b27 08-Nov-2011 Jeff Hamilton <jham@android.com> Changes for access control.

The package name is now required when using the
NFC extras APIs so the context is stored away
and used to derive the package name to be sent
to the NfcService.

Bug: 4515759
Change-Id: I1a3aba3fc026e0090a914b0686fc4b8dec25b927
NfcAdapter.aidl
NfcAdapterExtras.aidl
fcAdapter.java
fcManager.java
0946fe5be33eca9c728e5ad86869691f980590e2 10-Nov-2011 Martijn Coenen <maco@google.com> Revert "Remove deprecated (hidden) enableForegroundNdefPush API's." (DO NOT MERGE).

This reverts commit 562dfff65ac79590c0b7c50019cd3d107e8b4e0e. These API's are still used
by GMM in the version that ships with MR1, so we need them to keep Beam working for
GMM. Note that these APIs are hidden.

From version 5.13 onwards GMM will use the new API's.

Change-Id: I316a9c9b7d0052a14f6c1df70f2ed463bca61800
fcAdapter.java
579117036b212d010d7b6b022b3ad49f9453f89e 01-Nov-2011 Martijn Coenen <maco@google.com> am b288f993: am 1eca250b: Merge "Fix disableForegroundNdefPush crash." into ics-mr0

* commit 'b288f99334348a21ffb465b37a4522998b452410':
Fix disableForegroundNdefPush crash.
b288f99334348a21ffb465b37a4522998b452410 31-Oct-2011 Martijn Coenen <maco@google.com> am 1eca250b: Merge "Fix disableForegroundNdefPush crash." into ics-mr0

* commit '1eca250b9dad45893fead128539f112cbc513496':
Fix disableForegroundNdefPush crash.
deb0f20c3d1abf68c7e0642b6c7e3fa3cc8b36be 31-Oct-2011 Martijn Coenen <maco@google.com> Fix disableForegroundNdefPush crash.

It crashed due to the fact that we're committing a fragment change
after onSaveInstanceState() is called. Instead, commit without
storing the state - as the NfcFragment is something that needs
to be setup explicitly anyway, it is not something the user
expects to be restored.

Bug: 5540962
Change-Id: I5a8cd0e47306f2bbc14b592a0182083bb79cb21a
fcFragment.java
cccf01d3e270bbf53ae6601698109ac4ef461076 31-Oct-2011 Nick Pelly <npelly@google.com> API Change: add isNdefPushEnabled() & ACTION_NFC_SETTINGS.

Modify isNdefPushEnabled() semantics slightly - true only if isNfcEnabled && NDEF push enabled.

Fix up docs.

Change-Id: Icd2df9c636ecf2d8274851bbda423f2eae7bac5f
fcAdapter.java
fafc43b349c6b4e8d77ce60f6cac7290cdacdd1a 14-Oct-2011 Martijn Coenen <maco@google.com> am 202b38cb: Merge "Remove NfcFragment from activity when no longer sharing." into ics-mr0

* commit '202b38cb71d123e4ebc8741643e84fa455ecd002':
Remove NfcFragment from activity when no longer sharing.
2ec83936a1c05d3286cb5656566e905a50d871de 14-Oct-2011 Martijn Coenen <maco@google.com> Remove NfcFragment from activity when no longer sharing.

This fixes scenarios where the same activity sets, unsets
and re-sets an NdefMessage and/or callback.

Bug: 5454848
Change-Id: I5ed98047b9cfe90d2f48656d978f2d08bb4bf0cc
fcActivityManager.java
79425fd600e521f1eb4947c26ef631d3e1d29920 11-Oct-2011 Nick Pelly <npelly@google.com> Merge "Remove deprecated (and hidden) enableForegroundNdefPush callback API's."
2d68a6ba3c1354f363e5ee77448f163664bf47d9 27-Sep-2011 Scott Main <smain@google.com> docs: mix of BT and NFC javadoc updates
Add Health profile to various discussions about profiles
Add descriptions to NFC interfaces, tweak some desciptions, and fix some broken links

Change-Id: Ib89434c78a4ad60b4358dca9a6c335451d1c4125
fcAdapter.java
fcEvent.java
562dfff65ac79590c0b7c50019cd3d107e8b4e0e 23-Sep-2011 Nick Pelly <npelly@google.com> Remove deprecated (and hidden) enableForegroundNdefPush callback API's.

This were just left in until youtube and maps pre-builts were updated.

Change-Id: I41d3ccb5c17f04be62c2ac854355fb6e66785176
fcAdapter.java
0c8d57d124d917721890b0aa4a152f9c9c7d317f 02-Sep-2011 Martijn Coenen <maco@google.com> Merge "Fix Activity ref-leak in NFC dispatch API."
3433a8ae5abf7c518277e2e00c141e1dec83600c 02-Sep-2011 Martijn Coenen <maco@google.com> Fix Activity ref-leak in NFC dispatch API.

Change-Id: I7b1ee6927747b12eb94cfd6ece40c2c73003f07f
fcActivityManager.java
fcFragment.java
82328bfd40008d85917cc01a1b2eb8eed1f23ec4 30-Aug-2011 Nick Pelly <npelly@google.com> NFC API updates.

o NfcAdapter.set*(): enforce at least one activity is provided at compile time.
o Unhide and update javadoc for some API's scheduled for ICS release.

Change-Id: I2bf4ea101442dcdeb359be26d3869f82e6e3748b
defRecord.java
fcAdapter.java
ech/IsoDep.java
ech/MifareClassic.java
ech/MifareUltralight.java
ech/NfcA.java
ech/NfcF.java
e432de8493bae1f6017731d6668a0fada334aa8d 27-Aug-2011 Nick Pelly <npelly@google.com> Merge "Improve NDEF push API"
c84c89a6cacaf16c1ba41f57cc1aecdb150e85f9 23-Aug-2011 Nick Pelly <npelly@google.com> Improve NDEF push API

Introduce
setNdefPushMessage()
setNdefPushMessageCallback()
setNdefPushCompleteCallback()

Deprecate public API
enableForegroundNdefPush()
disableForegroundNdefPush()

Hide & Deprecate staged (public but never released) API
enableForegroundNdefPushCallback()

The new API's do not require the application to explicitly call
enable()/disable() in onPause()/onResume(), we use a Fragment behind
the scenes to manager this automatically.

NDEF Push can be disabled by using a null parameter, so each
enable()/disable() pair is collapsed to a single set() call.

Application code should now look something like:

public void onCreate() {
NfcAdapter adapter = NfcAdapter.getDefaultAdapter(this);
if (adapter != null) { // check that NFC is available on this device
adapter.setNdefPushMessage(myNdefMessage, this);
}
}

And that's it - no need to explicitly hook into onPause() and onResume() events.

Also - introduce a generic NfcEvent class that is provided as a parameter on
all NFC callbacks. Right now it just provides the NfcAdapter, but using
the wrapper classes allows us to add more fields later without changing
the callback signature. (i'm thinking Bluetooth).

Change-Id: I371dcb026b535b8199225c1262eca64ce644458a
NdefPushCallback.aidl
NfcAdapter.aidl
fcActivityManager.java
fcAdapter.java
fcEvent.java
fcFragment.java
fcManager.java
faca12adc62d148505fadfd286e6a2752c197fa0 19-Aug-2011 Martijn Coenen <maco@google.com> Add getMaxTransceiveLength() API.

Also moved canMakeReadOnly() down in the stack, and
cleaned up TransceiveResult.

Change-Id: I85576c52478ab79f0726606659b0c17d00b222e6
NfcTag.aidl
ransceiveResult.java
ech/BasicTagTechnology.java
ech/IsoDep.java
ech/MifareClassic.java
ech/MifareUltralight.java
ech/Ndef.java
ech/NfcA.java
ech/NfcB.java
ech/NfcF.java
ech/NfcV.java
8d32a01bd24b8a0d1a98f0581b3394a78fab8242 09-Aug-2011 Nick Pelly <npelly@google.com> Add NFC to airplane mode

NFC now observes airplanes mode, and is by default toggleable in airplane mode.

Change-Id: I5f19d35422c9eb1cffb0b5e0631b3f3c5eeaedcf
NfcAdapter.aidl
fcAdapter.java
a37fcbce59c8a746f641936b4de99867dbfabac9 05-Aug-2011 Martijn Coenen <maco@google.com> Add Android app RTD type and convenience method.

Change-Id: I4e6351c86a0062efc9a9f90e75c04f6520e50c4f
defRecord.java
c3afd39c6722cd57307fd90aee405179aea77f6b 30-Jun-2011 Jeff Hamilton <jham@android.com> Remove the binder interface for LLCP.

Change-Id: Idc9631cdbcac1435e285c656948a37315e32515d
LlcpConnectionlessSocket.aidl
LlcpServiceSocket.aidl
LlcpSocket.aidl
NfcAdapter.aidl
NfcAdapterExtras.aidl
P2pInitiator.aidl
P2pTarget.aidl
7a1ac5c0fbade27c08ae566771b628cd37ca5d77 21-Jul-2011 Martijn Coenen <maco@google.com> Hide new interface to fix build.

Change-Id: I9d408ad5ab64399af67b37a01be973634a194ae2
fcAdapter.java
6d7489407995210f3f01690d1f0c8b970362d8ae 21-Jul-2011 Martijn Coenen <maco@google.com> Interfaces for enabling/disabling zero-click.

Change-Id: If7a90e67ca0f05cb18bea2861001e9cb6a14f4d6
NfcAdapter.aidl
fcAdapter.java
63fc01d044e43d7b7399ff75f55ce91ef75cb64a 21-Jul-2011 Martijn Coenen <maco@google.com> Merge "Support for getTimeout() (API)."
a77258b98ec1aa7f605a93e4be59c3540c90c05c 21-Jul-2011 Jeff Hamilton <jham@android.com> Remove the hidden My Tag APIs.

Bug: 5048185
Change-Id: Iaf8a77e301fd378738db632e23674facd2c8fccc
NfcAdapter.aidl
fcAdapter.java
20e62c9f1466ace5771e244f03a995dc0939b11b 20-Jul-2011 Martijn Coenen <maco@google.com> Support for getTimeout() (API).

Bug: 4492175
Change-Id: Ibc9a1b78d8c0992f47664d33760e0ce8dca67c64
NfcTag.aidl
ech/IsoDep.java
ech/MifareClassic.java
ech/MifareUltralight.java
ech/NfcA.java
ech/NfcF.java
67671874dcba734fc78d39573aa68c0cbe8e2b24 14-Jul-2011 Ben Dodson <bjdodson@google.com> unhide public apis

Change-Id: I3bbe0e7c1e135a4654f63c34c024d7aa10341279
defRecord.java
8856c4278d9fd727081083d0f88459a8152d88c0 01-Jul-2011 Jeff Hamilton <jham@android.com> Improve Tag.toString().

Change-Id: Iea254201d04dc45bc94c237aa4a57da096c5f134
ag.java
1584af9d4e96282f0b4f4e8e647fd6a6d18594fb 30-Jun-2011 Jeff Hamilton <jham@android.com> Add a string based createUri().

Change-Id: Ie26977684d0f48201daa605b8b6057ab9afb370e
defRecord.java
b8a8c7a279c50276bddaab1f74bbba735de0b7c8 23-Jun-2011 Nick Pelly <npelly@google.com> resolved conflicts for merge of 6ce70394 to master

Change-Id: I7a4a08409c0133a1738b03b476f2b388c7aec5bf
6ce7039482a737c304ea9d0c32a7edf22e8b5d95 21-Jun-2011 Nick Pelly <npelly@google.com> am 6f1a8edc: am 17523abb: NFC Adapter Extras API update.

* commit '6f1a8edcc00db40a8ad300e15a23f7f1de298c3b':
NFC Adapter Extras API update.
3da3a4582c0793f59a1fd897a992e5e4fd57b6ca 17-Jun-2011 Ben Dodson <bjdodson@google.com> Parser for uri records

Change-Id: I4b71ba7938aa83a1c6344e3da72a9495bc1e9a16
defRecord.java
17523abb45b7f77f35af53e895d74be13f2314e0 17-Jun-2011 Nick Pelly <npelly@google.com> NFC Adapter Extras API update.

Remove
o registerTearDownApdus()
o deregisterTearDownApdus()
They were already NO-OPS, and don't work in the general case.

Add
o authenticate(byte[] token)
This future proofs us for a more flexible access control scheme.

Change-Id: I4cb67ceeb63d61cbc333c9b244a96d8687402168
NfcAdapterExtras.aidl
112fdf612db71a552fce063136bf2796df3b71ec 09-Jun-2011 Martijn Coenen <maco@google.com> Support for setting the NfcA transceive timeout (API).

Change-Id: I2c40fbc7e9101462afae18125feba30cf76ea5f2
NfcTag.aidl
ech/IsoDep.java
ech/MifareClassic.java
ech/MifareUltralight.java
ech/NfcA.java
ech/NfcF.java
195c39cbcee2ba9d9d532359bcf8bd7a01205911 10-Jun-2011 Nick Pelly <npelly@google.com> NFC: Submit the missing pieces of previous commit to fix build.

(remove stale code)

Change-Id: I0d08650b6d694ac4493cf0074696d4e1be7d9f87
NfcAdapter.aidl
NfcAdapterExtras.aidl
2dcae567ab56285bc70b6857c4f3c87df09641b8 03-Jun-2011 Martijn Coenen <maco@google.com> Added support for rediscovering a Tag (API).

Bug: 3378764
Change-Id: I4697b814337270c4458ca2b8ce358de315904777
NfcTag.aidl
ag.java
9eb5847777b317991a44c01b901f35d99485c733 08-Jun-2011 Nick Pelly <npelly@google.com> Merge "Move NDEF URI helper method into android.nfc.NfcRecord"
e0180d053e956ac32c2a5ec60272927755f17251 08-Jun-2011 Nick Pelly <npelly@google.com> Move NDEF URI helper method into android.nfc.NfcRecord

Change-Id: Ia044e45cbe2cd06c4844d15a57f1c1f392cf65cd
defRecord.java
a924973f22aedc580708625e4babb6deabc6b4d3 06-Jun-2011 Martijn Coenen <maco@google.com> Implement Felica timeout handling (API).

Allows controlling the timeout for transceive on Felica.

Change-Id: I5c62b3ea0e8a16bc006feac6ec759cdb730bc938
NfcTag.aidl
ech/BasicTagTechnology.java
ech/IsoDep.java
ech/NfcF.java
ea51a4275ab7353d537ff94d97e6294e49b50cab 06-Jun-2011 Martijn Coenen <maco@google.com> Connecting to a NFC technology may fail.

NotSupportedOperationException will be thrown in these cases,
unchecked for now.

Bug: 4195403
Change-Id: I48f4f277d43afba8bc505ae2a6c216cc387b1e97
rrorCodes.java
ech/BasicTagTechnology.java
e00ef0087308e9f3522140b81b48f00e7cdc81c1 01-Jun-2011 Jeff Hamilton <jham@android.com> am 7c324a3f: am 5e654d02: am 14019abb: Merge "Swap Mifare for MIFARE." into honeycomb-mr2

* commit '7c324a3f7dde4be26b7a996b485a92ba25de3251':
Swap Mifare for MIFARE.
fe6dfd504bfa31d95382d80cc7acc5b1add01b34 28-May-2011 Martijn Coenen <maco@google.com> Implement Mifare Ultralight-C detection (API).

Bug: 3398465
Change-Id: Ieb60deedfde5af4494a14b3e322c5a61ae75aaf9
ech/MifareUltralight.java
8bede1704717f594a0f924a57ff46f6300347e30 08-Apr-2011 Martijn Coenen <maco@google.com> Fix NdefRecord flags handling.

NdefMessages created from byte arrays set the wrong flags on
NdefRecord: every record had at least FLAG_MB|FLAG_ME set, instead of actually
setting the flags from the byte-stream itself. Fixed by creating an internal
constructor which can take the flags.

Public constructor remains the same, as we don't want to bother application
writers with these flags - they can be inferred from the context in which the
record is used. Getting the flags is not a public operation on an NdefRecord
either. However, applications can get the byte[] representation and it
is reasonable for them to expect the flags byte to be set correctly.

Change-Id: Ic32411688dd092c55b1aeccbba9635792e15a671
defRecord.java
7c324a3f7dde4be26b7a996b485a92ba25de3251 26-May-2011 Jeff Hamilton <jham@android.com> am 5e654d02: am 14019abb: Merge "Swap Mifare for MIFARE." into honeycomb-mr2

* commit '5e654d02457e0f90f8cdaf07843af1be7328ed7f':
Swap Mifare for MIFARE.
5e654d02457e0f90f8cdaf07843af1be7328ed7f 26-May-2011 Jeff Hamilton <jham@android.com> am 14019abb: Merge "Swap Mifare for MIFARE." into honeycomb-mr2

* commit '14019abb40785064ebef5d14e82586a910d33181':
Swap Mifare for MIFARE.
734e9b0c73483fdaa582c21dedc24107b1fe8838 26-May-2011 Jeff Hamilton <jham@android.com> Swap Mifare for MIFARE.

Change-Id: I45580d32f5ccebf906372c3c1664bc66718a672e
ech/MifareClassic.java
ech/MifareUltralight.java
01425365a85e605139f612502f68954cad869e5b 24-May-2011 Jason parks <jparks@google.com> Add public API to do NDEF push.

Change-Id: I102da9bbc6d78577a26fa03ee363a60abc389d6c
NdefPushCallback.aidl
NfcAdapter.aidl
fcAdapter.java
ab8f48c2ee524f67e5c3cab5846119e6c8a645b5 31-Mar-2011 Jason parks <jparks@google.com> Implement teardown script.

Change-Id: I1a3feda3b1007b08fcaa24c3f8dd21abf1efd885
pduList.aidl
pduList.java
NfcAdapterExtras.aidl
367f41f8f61126c2ab34a34cc676756a9fc23ac2 08-Mar-2011 Nick Pelly <npelly@google.com> Implement new NFC-EE API's as shared library (frameworks/base).

Change-Id: I45c4eaf59ec78167fc236fdd59676465a5e1bcb7
NfcAdapter.aidl
NfcAdapterExtras.aidl
NfcSecureElement.aidl
fcAdapter.java
fcSecureElement.java
5644d0e18ad847b66a8cb4f185cb28edebe75d88 25-Feb-2011 Jeff Hamilton <jham@android.com> Support for NDEF on iCODE.

Change-Id: I9ce2ee5e739d34a9047ca494315cbc54b30fefb8
ech/Ndef.java
7bcd2c62ebfad640e8082c1dc700c9d8c57aba81 07-Jan-2011 daniel_tomas <daniel.tomas@nxp.com> New API added in NfcAdapter to enable/disable SE card emulation

Change-Id: Ia0c123873ba9265b45e847d1a30c1300de3c1346
fcAdapter.java
2deeefeb5e6342c44e8fceb4104f1ad96b9bc704 15-Feb-2011 Robert Ly <robertly@google.com> Adding package summary for nfc.tech package

Change-Id: Ibbf55c21dcaf48b4eb369e78c54fb1023abb3cb3
ech/package.html
58c9d4726ebf3165b0dbbcebb1130dfc5502bfe9 09-Feb-2011 Jeff Hamilton <jham@android.com> Merge "More documentation updates for NFC." into gingerbread
28319c0cec94977682db32b949628a8e4b8183dc 09-Feb-2011 Jeff Hamilton <jham@android.com> More documentation updates for NFC.

Change-Id: Ie134d4296ee12333e6647ce76126f9767ba1ba34
fcAdapter.java
ag.java
ech/Ndef.java
39cf3a445e507f219ecc8a476f6038f095d9d520 07-Feb-2011 Nick Pelly <npelly@google.com> Document NFC permissions.

Change-Id: Ib1b1625058c9c673692f3fbcb3546ec7c2d54a07
fcAdapter.java
ech/IsoDep.java
ech/MifareClassic.java
ech/MifareUltralight.java
ech/Ndef.java
ech/NdefFormatable.java
ech/NfcA.java
ech/NfcB.java
ech/NfcF.java
ech/NfcV.java
ech/TagTechnology.java
167d9e473f9240d452b25218625c326f31eebbaa 08-Feb-2011 Jeff Hamilton <jham@android.com> Improve the docs a bit for foreground dispatch.

Change-Id: I4179133a0956bc66a49201c20f1dd2d6d67874d2
fcAdapter.java
46797ac098e90cbef5c266b75fb37fc06e9acc80 04-Feb-2011 Nick Pelly <npelly@google.com> Fix docs type that broke build.

Change-Id: I5b5a2fc5baf95ace74bf90ff2c750ba890054d64
ech/MifareClassic.java
ech/MifareUltralight.java
ech/NdefFormatable.java
74fe6c6b245ebe7d3b3d96962c32980d88dca4f5 03-Feb-2011 Nick Pelly <npelly@google.com> NFC documentation overhaul.

Change-Id: I45dca95a24b2d0327e080436fbcc7b1dad79de02
fcAdapter.java
fcSecureElement.java
ag.java
ech/IsoDep.java
ech/MifareClassic.java
ech/MifareUltralight.java
ech/Ndef.java
ech/NdefFormatable.java
ech/NfcA.java
ech/NfcB.java
ech/NfcF.java
ech/NfcV.java
ech/TagTechnology.java
f003e26df96067b4b136f0859012cb7ec3ed930f 01-Feb-2011 Nick Pelly <npelly@google.com> Final final final Gingerbread MR API changes.

This is it. I promise.

ACTION_TECHNOLOGY_DISCOVERED -> ACTION_TECH_DISCOVERED
This was missed in our technology->tech rename.

Hide TagTechnology.reconnect()
This is used to reset any per-connection state in a tag, by reconnecting
to it. The first problem is that it belongs on Tag, not TagTechnology. The
second problem is that it may become redundant once we add Tag.rediscover()
which will also reconnect to the tag, and will also return a new Tag with
newly created technologies enumerated. And the third and most significant
problem is that you can already achieve the same result by just calling
close() followed by connect().

Hide Tag.createMockTag()
This API cannot be used reliably. First it requires using int[] for the
technology list, but those int constants are now hidden. Second it requires
knowledge of the extras parcel used to fill technology specific data - also
not public.

Introduce TagTechnology.isConnected()
Every child class already impelmented this, and given that connect() and
close() are defined on the interface, then isConnected() should be there
too.

Modify Ndef.getType to return a string (not int)
Allows more flexibility in adding new NDEF types. Current public strings are
org.nfcforum.ndef.type1
org.nfcforum.ndef.type2
org.nfcforum.ndef.type3
org.nfcforum.ndef.type4
com.nxp.ndef.mifareclassic

Add NdefFormatable.formatReadOnly()
This allows you to make the tag read-only at the same time as performing
format and write. It is important because we currently don't have any
public API to re-enumerate a tag technology list after making a tag
NDEF compatible, so you can't perform the format as a seperate step
without physically removing the tag from field and returning it.

Modify Readonly -> ReadOnly

Make Tag class final

Change-Id: Icf306aeb37b936ca3007e4868e99b6baceac4aff
fcAdapter.java
ag.java
ech/BasicTagTechnology.java
ech/Ndef.java
ech/NdefFormatable.java
ech/TagTechnology.java
3fcedf77286a078ebd7ac8c082365bd80703dfdc 27-Jan-2011 Nick Pelly <npelly@google.com> API: Make close() throw an IOException.

IOException on close() can be useful to indicate that in-progress transactions
were canceled.

I also audited all of our tech classes to make sure every function that needs
to throw IOException does so.

Change-Id: Iaa9c43d79d59ff85772d5c3e4b4d57a6fa8df4cf
ech/BasicTagTechnology.java
ech/IsoDep.java
ech/TagTechnology.java
21d0a173f138563e2eaba286b0eb505f987918a9 27-Jan-2011 Nick Pelly <npelly@google.com> Fix build - javadoc.

Change-Id: I0168fb4a75f4dff88e347c0dfd1f0b39e2dba0d6
ech/MifareUltralight.java
4a5e2532205252e0b8616ebc07ca089fd3721681 27-Jan-2011 Nick Pelly <npelly@google.com> Clean up MifareUltralight API.

o Some javadoc updates
o writeBlock -> writePages (Block means something else in NFC Forum).
o validate page offset

Change-Id: Icae54db3397d57aaa451caaa86d56e8ba82507f2
ech/MifareClassic.java
ech/MifareUltralight.java
f126ad3b6484ef62eed202f1f49cc4557c0a3848 25-Jan-2011 Jeff Hamilton <jham@android.com> Merge "Use classnames instead of ints for NFC techs." into gingerbread
d88e9aa575eb3a9d20cdb0e8918d54993e1ce1e0 24-Jan-2011 Jeff Hamilton <jham@android.com> Use classnames instead of ints for NFC techs.

This makes the system more flexible and allows
adding new technology types without having to
update the API.

Change-Id: Iaee6b633965e501a70e8afc3f1d54d9d94a4d05a
NfcAdapter.aidl
fcAdapter.java
ag.java
echListParcel.aidl
echListParcel.java
ech/BasicTagTechnology.java
ech/Ndef.java
ech/TagTechnology.java
b134223f91c8801d577cb72e92a37cb65fec717a 25-Jan-2011 Nick Pelly <npelly@google.com> Make Mifare Classic increment/decrement operands little endian

Also make sure they are non-negative.

This is not documented in Mifare Classic spec, but based on findings from NXP:
- Operand should be stored in little-endian format in the transceive buffer
- Tag ignores the sign bit on the operand, its effectively 31-bit unsigned
- Overflow and underflow generates an error.

Change-Id: Id3389b3894ded732c4b00d564ca53f5df651359e
ech/MifareClassic.java
c5a418ecb7681159ae6674a4d91177c6841537b1 24-Jan-2011 Sylvain Fonteneau <sylvain.fonteneau@trusted-logic.com> Handle mock tags in android.nfc.Tag conversion to Parcel.

When generating a mock tag (after a NDEF exchange over LLCP), one of
the internal fields is set to null. This was causing NullPointerException
when being converted to a Parcel.

This is fixed by not including this field in the Parcel for mock tags.

Change-Id: I000e2faa54d71fd755ba7993e1e258743aad98fb
ag.java
c896d85c15d8a6c98c93df57d88481b89eb878f5 24-Jan-2011 Nick Pelly <npelly@google.com> Merge "Add operands to mifare classic increment, decrement." into gingerbread
1e233af3a783d44843a6f2b895d00a5d3b0c29f0 24-Jan-2011 Nick Pelly <npelly@google.com> Add operands to mifare classic increment, decrement.

Change-Id: Ib35f615142bda48a5e33888a09ebae2880624788
ech/MifareClassic.java
da01b4abb817fcebdf33c27aaa6a1ac4a61beee0 24-Jan-2011 Nick Pelly <npelly@google.com> Merge "Make MifareClassic methods more consistent." into gingerbread
e45083b11bef915f713379fb4106dd2ebd897d03 22-Jan-2011 Nick Pelly <npelly@google.com> Make MifareClassic methods more consistent.

Remove method overloading for combinations of sector+block addressing.
Instead provide methods that more closly match the raw commands, and more
efficient helpers to convert between blocks and sectors.

o fix off-by-one bug in getBlockCountInSector()
o add BLOCK_SIZE
o remove DESFIRE not operating in classic emulation (SAK 0x20)
o hide isEmulated(), there is no use case, and the info is available elsewhere
o getTotalBlockCount() -> getBlockCount()
o getBlockCount(int) -> getBlockCountInSector(int)
o introduce blockToSector() and sectorToBlock()
o remove authenticateBlock()
make it really clear that authentication is per sector, and reduce function
explosion. blockToSector() allows you to use authenticateSector...
o explicit authenticateSectorWithKeyA() / authenticateSectorWithKeyB()
get rid of magic boolean
o remove all (int sector, int block) parameters
always address by absolute block. this makes the API crystal clear, and
helps reduce function explosion
o validation of all sector and block indices
o dont & 0xff when converting to byte - its redundant
o Remove TYPE_OTHER. Mifare Classic types are well-known and stable.

Change-Id: I3c9f8254ff307f31b388b3d7592c862d5de6afa5
ech/MifareClassic.java
9f20cd7ff26548e98d7b8412807720c7b340133d 23-Jan-2011 Jeff Hamilton <jham@android.com> Allow null filters for foreground dispatch to act as catch all.

Change-Id: Idf3d2e344a6e87035ccb5b533ed9e81fec596132
fcAdapter.java
4e21e1d21a877cce4db5ec8c5786604cc10f2d7e 21-Jan-2011 Jeff Hamilton <jham@android.com> API changes for NFC.

Bug: 3366009
Change-Id: Ia28e03e1501421906b640b78d4c9a59a20e9c668
fcAdapter.java
fcSecureElement.java
ag.java
ech/BasicTagTechnology.java
ech/IsoDep.java
ech/MifareClassic.java
ech/MifareUltralight.java
ech/Ndef.java
ech/NdefFormatable.java
ech/NfcA.java
ech/NfcB.java
ech/NfcF.java
ech/NfcV.java
ech/TagTechnology.java
echnology/BasicTagTechnology.java
echnology/IsoDep.java
echnology/MifareClassic.java
echnology/MifareUltralight.java
echnology/Ndef.java
echnology/NdefFormatable.java
echnology/NfcA.java
echnology/NfcB.java
echnology/NfcF.java
echnology/NfcV.java
echnology/TagTechnology.java
0316d4a24ff4b1ebf832f3ca9847771580eeac2f 19-Jan-2011 Nick Pelly <npelly@google.com> Change signature of MifareClassic.authenticate*() to throw IOException.

Update API for this and the previous commit.

Change-Id: I19275a5d00081bd0f00afea59a2b673344a32954
echnology/MifareClassic.java
bf34061bb4af12aa9efaab653ae413f2bce4a240 19-Jan-2011 Martijn Coenen <martijn.coenen@nxp.com> Support for TagLostException (API).

Change-Id: Idf2c3253f7bc5f371133c4f18bfc2afde69c3010
NfcTag.aidl
agLostException.java
ransceiveResult.aidl
ransceiveResult.java
echnology/BasicTagTechnology.java
echnology/MifareClassic.java
a8ca533d34cfc8917127113363d7316660e0db58 19-Jan-2011 Nick Pelly <npelly@google.com> Fix javadoc which broke build.

Change-Id: Ie3cac9bec04e80defae44ba02086ad0cdfd301a9
echnology/IsoDep.java
cbec3fb285f3a4523efa8ae39f5f79fbda0acea9 18-Jan-2011 Martijn Coenen <martijn.coenen@nxp.com> hange the default IsoDep timeout to 300ms (docs update).

Change-Id: I4fe5a6bf9fd42a28c9619e6e0bf11885bcc43f91
echnology/IsoDep.java
07e6f616d122496342a5bae51323bb218d88f7f2 14-Jan-2011 Martijn Coenen <martijn.coenen@nxp.com> Check NDEF before calling makeReadOnly().

Change-Id: Iadbaf5c29821eff78ad487b248af529febcdc4ce
echnology/Ndef.java
a701cf85a0167a6bb623343388a7dca6f2b61ac5 12-Jan-2011 Martijn Coenen <martijn.coenen@nxp.com> Implement IsoDep timeout handling (API).

Added a method for setting the timeout on IsoDep transactions.

Change-Id: Ie627e7a826556e46295fefe69b9be83ebf911d93
NfcTag.aidl
echnology/IsoDep.java
ce3224cda51f946871daa1e11e3976e25c59e6fa 17-Jan-2011 Jeff Hamilton <jham@android.com> Javadoc updates for NFC.

Change-Id: Ibd91829979576297599fbcc9eb8054924af1d527
fcAdapter.java
ag.java
echnology/BasicTagTechnology.java
echnology/IsoDep.java
echnology/MifareClassic.java
echnology/MifareUltralight.java
echnology/Ndef.java
echnology/NdefFormatable.java
echnology/NfcA.java
echnology/NfcB.java
echnology/NfcF.java
echnology/NfcV.java
echnology/TagTechnology.java
33ff2405581271adf14ed4e45597a3b0b80a46ab 17-Jan-2011 Jeff Hamilton <jham@android.com> New APIs for NDEF Push Protocol.

The NPP is only usable by the foregorund
activity to prevent dispatching confusion
on the far end.

Change-Id: I08475a52083fd7f81b79b7fe2faf4e126121a809
NfcAdapter.aidl
fcAdapter.java
b73203ab7e308b747819de2b2400afe971ef3bff 15-Jan-2011 Nick Pelly <npelly@google.com> Merge "Make sure service handles are live before passing to other objects." into gingerbread
52d3203ef69d4babbc4dd030a15c08c0b8d1d226 08-Jan-2011 Jeff Hamilton <jham@android.com> Add dispatching overrides for foreground apps.

Apps can register to override the default dispatching
but only when they're in the foreground.

Change-Id: I8e9a9254d3f79f097fb3c8c677d806043574ba4d
NfcAdapter.aidl
fcAdapter.java
253c509cb0d36b39c3d878c0caf7f1eca194068a 13-Jan-2011 Nick Pelly <npelly@google.com> Make sure service handles are live before passing to other objects.

Change-Id: Ia3fa799b56463f313da0e84a50c4dc75d584eaca
fcAdapter.java
200ca02fcaf2c24ea7716f65ed9a7bff8cddd975 07-Jan-2011 daniel_tomas <daniel.tomas@nxp.com> New Intent defined for RF ON/OFF events

Change-Id: Ie1bc056bd36eb999b4678c594a3edc801a0cf6a1
fcAdapter.java
25be53652167300183282d170a00a6df576523f5 10-Jan-2011 Martijn Coenen <martijn.coenen@nxp.com> Implement canMakeReadonly().

The method is needed since makeReadOnly() only works on T1T/T2T. Also removed
makeLowlevelReadonly(), since NFC forum does not allow setting the CC and the lock
bits separately.

Change-Id: I8e6d7c065b1f017ef07d878c41df05e1a8193f5a
echnology/Ndef.java
3dd6c458530476eccb33bc05c9c9cd83823bcf8d 10-Jan-2011 Nick Pelly <npelly@google.com> Remove attemptDeadServiceRecovery() from TagTechnology's.

attemptDeadServiceRecovery() is a hack to recover from NfcService dying. It
should be a rare event, and is only needed in NfcAdapter which is a long-lived
object.

TagTechnology objects are transient, it is acceptable for them to go stale
when NFC service dies. Lets not complicate the code with recovery for a rare
event.

Change-Id: I101350e920b075c680eb4f250683f0a2bb878553
fcAdapter.java
echnology/BasicTagTechnology.java
echnology/IsoDep.java
echnology/Ndef.java
echnology/NdefFormatable.java
b4003bf73e8150fa775506ae508cc55011442308 10-Jan-2011 Nick Pelly <npelly@google.com> Change Tag.getTechnology(NfcAdapter, int) to NfcAdapter.getTechnology(Tag, int)

The later feels less clumsy.

Change-Id: I50f29aef23d2993dcfd25f4c4f2cb0d77bdc0610
fcAdapter.java
ag.java
echnology/IsoDep.java
echnology/MifareClassic.java
echnology/MifareUltralight.java
echnology/Ndef.java
echnology/NdefFormatable.java
echnology/NfcA.java
echnology/NfcB.java
echnology/NfcF.java
echnology/NfcV.java
f54ad8daf6f9dc2b9670ab1abbbfa4308b40bc6a 05-Jan-2011 Nick Pelly <npelly@google.com> Clean up transceive().

BasicTagTechnology.transceive(byte[] raw) should work for most child classes,
except those that want to disable (raw) transceive.

Current plan is not to add transceiveMifare() etc - use explicit methods
instead.

Add package scoped BasicTagTechnology.transceive(byte[] rata, boolean raw)
as a helper to remove code duplication.

Change-Id: Iaea161022751c99058d291e2ed0f8c475d1c7282
echnology/BasicTagTechnology.java
echnology/MifareClassic.java
echnology/MifareUltralight.java
be372d6462605010910e771cef15d5adccd0a59e 23-Dec-2010 Jeff Hamilton <jham@android.com> Make the new NFC APIs public.

Change-Id: Ia0acd9759d67683eaf1dc199dc2cc55e16a98e77
fcAdapter.java
ag.java
echnology/IsoDep.java
echnology/MifareClassic.java
echnology/MifareUltralight.java
echnology/Ndef.java
echnology/NdefFormatable.java
echnology/NfcA.java
echnology/NfcB.java
echnology/NfcF.java
echnology/NfcV.java
echnology/package.html
a559aa4759309606cd201e7e39844c3363a72b24 21-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Fix technology extra naming for IsoDep and NfcB (API part).

Change-Id: Iaa8f1b4dec5d626ffb17a33d71d2f92dd0d99636
echnology/IsoDep.java
echnology/NfcB.java
8f49c025ca5b4ed84290fb9e5e0b7acb1c139b35 04-Jan-2011 Nick Pelly <npelly@google.com> Merge "Added response flags and DSFID extras for NfcV technology (API part)." into gingerbread
7eb32a442722a7147cb0d9e92d118e6f7852ea0e 03-Jan-2011 Martijn Coenen <martijn.coenen@nxp.com> Added response flags and DSFID extras for NfcV technology (API part).

Also fixed a missing assignment in NfcB technology.

Change-Id: Ic564a0a17a9638c11fa528056da40f74ed37e9e6
echnology/NfcB.java
echnology/NfcV.java
a743448a1b34d950b1e6f06e308ce113cbc9abcb 04-Jan-2011 Nick Pelly <npelly@google.com> Merge "Tweak Ndef.getType() API. Rename constants, expand javadoc." into gingerbread
ddbb2c997b8462d7242b50ea1689a53122d4fce4 04-Jan-2011 Nick Pelly <npelly@google.com> Tweak Ndef.getType() API. Rename constants, expand javadoc.

Change-Id: I9d2c83411411fea4ef46bb7c30ebdbcd9ee3e7d8
echnology/Ndef.java
163bd407492bbadcdc8f0759191e1b9142d06859 04-Jan-2011 Nick Pelly <npelly@google.com> Merge "Added getType() to NDEF technology class (API part)." into gingerbread
d27ebf1e698c4e6929cb635768031a2e25b18acd 22-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Added getType() to NDEF technology class (API part).

Change-Id: Idfa391dd9d4a401e1daa3dc90ca57e4a3d9e0fa3
echnology/Ndef.java
8c09ef91aef0706a012e449ba3d16c03e0d64508 04-Jan-2011 Nick Pelly <npelly@google.com> Merge "Removed selectAid() from IsoDep." into gingerbread
912aa1cd70a7a7dcc54eb377b7bcdb7060c3f23a 21-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Removed selectAid() from IsoDep.

It's a convenience method that can be implemented with transceive();
not really needed for now.

Change-Id: Idd855c85b15d97ae679d11d908834be3cb2741d8
echnology/IsoDep.java
a42b352594edf959302f8fc98041e76adeb6a20d 18-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Added transfer/restore convience cmds to MF Classic tech.

Change-Id: I675993bc3aae6a741d63be458a0dfea240dd5316
echnology/MifareClassic.java
3ce86481cbde92e2cb6fe3a46cbedd8b2a5c4b48 18-Dec-2010 Jeff Hamilton <jham@android.com> Remove canBeFormatted().

It's not easy to determine if this
is possible, so instead apps should
attempt a format and handle errors
in the format request.

Change-Id: I078a208b849e71ef3fb6b5970a9111ece4a2d201
echnology/Ndef.java
echnology/NdefFormatable.java
ab82a5b9a841cf052310e8500224932b9f5e3cad 17-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Clean up and polish Mifare Classic tech.

- It's useful to have accessors at block level, so apps don't really have to know
about the sector structure (and how many blocks there are in a sector).
- There's no way to tell whether a read/write/ didn't work because of auth
failure. The documentation should be changed to make this point clear.
- Added increment/decrement commands, for atomic increment/decrement of value blocks.

Change-Id: I590feacbcd1443f1be7a86ab046a5b1f33e2e04c
echnology/MifareClassic.java
01d159aa2c6303089269258f3ae047e74df9e2a9 16-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Need to check ndef before writing ndef.

Regression due to all the (re)connect changes.

Change-Id: I637618f63518965e893a5a59db61002271666fa4
echnology/Ndef.java
c58c3f1ae27c0c7f560bd381180397d7f6a2ebed 15-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Implement additional Mifare Ultralight convenience methods.

Change-Id: I8d9dfadb5911b2d11d1ba6dcf1381decbb8386ef
echnology/MifareUltralight.java
0d27f999f4b1ad51da11946800b40d2978fc6326 15-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Expose reconnect(), to allow applications to reset tag state.

Change-Id: Ib5432e7f6b6aaf6ec1cb06693592cb7c6440a6f8
echnology/BasicTagTechnology.java
echnology/TagTechnology.java
4049f9d00a86f848d42d2429068496b31a6795ad 14-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Implement multi-tech connect, enfore tech exclusivity.

- The NfcService now allows for connecting to a specific technology;
- The "active" parts of technology classes may not be used at the same time.

Change-Id: Ibb569f51cc6da4f3e24df9d0850c6f49a022b0c2
NfcTag.aidl
ag.java
echnology/BasicTagTechnology.java
echnology/IsoDep.java
echnology/MifareClassic.java
echnology/MifareUltralight.java
echnology/Ndef.java
echnology/NdefFormatable.java
e3f6336bcffc250da90ec864bccfa73ad1d016b9 13-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Fixed API for active NDEF reading and NDEF formatting.

- Added getNdefCached() to return the message read at discovery time.
- Fixed format() to check ndef before doing the write:
libnfc actually requires a checkNdef to be done before writing.

Change-Id: I9b3108299c05539bdef92dd74f62f911fb5a16bf
echnology/Ndef.java
echnology/NdefFormatable.java
641dd62155fd2eeddd93b2036154b13c05b70ba2 02-Dec-2010 Jeff Hamilton <jham@android.com> First pass at advanced NFC tag dispatching APIs and other cleanup.

Change-Id: I022fcd481274a2f68d93218026e77551cfae8cae
NfcTag.aidl
fcAdapter.java
echnology/Ndef.java
echnology/NdefFormatable.java
echnology/TagTechnology.java
b79173f6602359d00a1a89f4d6505a44d461d796 10-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Changed technology close() to reconnect to the tag instead of physical disconnect.

Change-Id: I8935e4aae452adeec472c0b3ff3c77f1400a264e
NfcTag.aidl
echnology/BasicTagTechnology.java
fc5a3b6cfb85679e82a39730c7154b55b0711a0c 10-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Changed transceive on all technologies to "raw", except for Mifare classes.

Change-Id: I3d680e37fec0ab84cdbb70d9fb6fff9527dd76a2
NfcTag.aidl
echnology/BasicTagTechnology.java
echnology/MifareClassic.java
echnology/MifareUltralight.java
echnology/Ndef.java
echnology/NdefFormatable.java
3300e4c3ea2f2317532ded6f9e79d6ad9e038679 09-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Implemented isWritable() to indicate NDEF capability container r/w state.

Change-Id: Ie8bdf490c955e620f5e5029346fbe2e188ea4748
echnology/Ndef.java
50b4d8f643f31b37e9872f562fb869059cf79c8a 08-Dec-2010 Nick Pelly <npelly@google.com> Make getSystemService(NFC_SERVICE) the NFC entry point.

This gives NFC service a handle to the application context.

Deprecate NfcAdapter.getDefaultAdapter(), it does not provide a context.
Using this method will print a warning, and will later throw an exception
if a method that requires a context is called. No 2.3 API's will fail, but
new API's that do require a context might fail.

Also add helper NfcAdapter.getDefaultAdapter(Context).

Change-Id: I9a6378de4ef4b61ad922f8d53e64e2a1a1d5d60c
fcAdapter.java
fcManager.java
ag.java
ackage.html
echnology/MifareClassic.java
echnology/MifareUltralight.java
40ddd4a64908c0cbe4970d2ba1703f74717620a8 08-Dec-2010 Nick Pelly <npelly@google.com> Merge "Implemented getSize() to return max ndef size." into gingerbread
6d9fc7e1efa9e99bdab366fc5d579c139fd04e71 07-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Implemented getSize() to return max ndef size.

Change-Id: Ia584e8cfa51a4eaef5f03dc436c78a67296c2cae
echnology/Ndef.java
5289b91c885158094988a9a7b51b3139565eb639 08-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Implement ndef formatting.

Change-Id: I6e3e3abdc304bc14d7c93a413e42bf957963e288
NfcTag.aidl
ag.java
echnology/NdefFormatable.java
72df4ea8300ad345eb256cf43d8dae35eef39ba2 07-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Remove Type X Tags from the top-level API.

Also added an extra to carry the ndef message, so we can have it in multiple
Ndef instances without doing an active read.

Change-Id: I2ecabc24732990c5c9979ee3a001a7fb13da21d9
ag.java
echnology/Ndef.java
echnology/TagTechnology.java
65c3f9806edd694c4db00fa2884139ea97c80962 06-Dec-2010 Jan Brands <jan.r.brands@nxp.com> Corrected MIFARE default key set

The all-zero key is not a commonly used key.
Fixed naming

Change-Id: I2fb86079159195c6893ea758e8b0bbda266dc420
echnology/MifareClassic.java
9a9706a213637b396226afff53c69927283609a7 06-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Added missing ndef technology to getTech.

Change-Id: I1f08e140c9bb43a8e894812adbc4d11801637f46
ag.java
e58e8a715b2c9e4f2d053e0dc95e88690a54c059 07-Dec-2010 Nick Pelly <npelly@google.com> Merge "Added NdefFormatable tag, initial class with supported methods." into gingerbread
39f91ed5290e8b27c795f8aec181a6dd4431d317 07-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Added NdefFormatable tag, initial class with supported methods.

Change-Id: Ifa358b5e980158d5e8accb9f42fdcfb29ad81e64
echnology/NdefFormatable.java
echnology/TagTechnology.java
c1576ad627d3d2b2d3c0764c605ebbf3ddc24401 06-Dec-2010 Jeff Hamilton <jham@android.com> Update the docs to clarify the ordering constraints.

Change-Id: Ib3932e637a675c875b9ed3482826a150b845a385
ag.java
2fe24e3e14cce791e89c93ddc23e28af5c2c90cc 03-Dec-2010 Jan Brands <jan.r.brands@nxp.com> First implementation of MifareUltralight

Change-Id: I77818ddc89b529c17fc41d6c0850688365c6b770
ag.java
echnology/MifareUltralight.java
echnology/TagTechnology.java
67a337bc51b9a7ecc09a779fb48a9a215bf5d0ed 01-Dec-2010 Martijn Coenen <martijn.coenen@nxp.com> Fixed technology name typo's.

Change-Id: If39b109cb60c762d50c21f6aaced0a31abb66c40
echnology/TagTechnology.java
bc7180bba42307306d9dffa9299d836b381da9c0 29-Nov-2010 Martijn Coenen <martijn.coenen@nxp.com> Implement historical bytes / attrib on IsoDep

Change-Id: Ic7afa29515d10fec72ac8f27adc411788ad6f68c
echnology/IsoDep.java
438feb9b3b7f79ab56abf47f817e6326fa8d7fe1 24-Nov-2010 Martijn Coenen <martijn.coenen@nxp.com> Provide system code and manufacturer code for Felica tech.

Change-Id: I56d5308ad5fa4998a88e1e0aec51fe301ab99078
echnology/NfcF.java
1253ebc74a8453a88dc47a2b698145098d201681 24-Nov-2010 Martijn Coenen <martijn.coenen@nxp.com> Fixed NfcAdapter init and getTechnology().

- GetTechnology() used a binary search, but the array was linked to another
array (extras) which was not sorted. So made it linear.
- The tag technologies were instantiated with a null NfcAdapter.

Change-Id: Iae15169a89155c3a5c9f81824f809d6010ebac01
ag.java
echnology/BasicTagTechnology.java
9024564107b58955f7bd257cab6fc6dfcb2e5ec2 17-Nov-2010 Daniel Tomas <daniel.tomas@trusted-logic.com> Secure Element access implementation

Change-Id: I907e6771ecc5babe895115c3a49288fa2144a187
NfcAdapter.aidl
NfcSecureElement.aidl
fcAdapter.java
fcSecureElement.java
6be655c768a82716612c00fdd156254d8dc00f42 12-Nov-2010 Jeff Hamilton <jham@android.com> Rough first pass at the NFC technology API.

Change-Id: I903ad6bc124bf9a65af788dae45f55d58704ef7b
NdefTag.aidl
NfcTag.aidl
defTag.aidl
defTag.java
defTagConnection.java
fcAdapter.java
awTagConnection.java
ag.java
echnology/BasicTagTechnology.java
echnology/IsoDep.java
echnology/MifareClassic.java
echnology/Ndef.java
echnology/NfcA.java
echnology/NfcB.java
echnology/NfcF.java
echnology/NfcV.java
echnology/TagTechnology.java
echnology/package.html
4934d3361edadb761d9c65fe8c2bf5b8d01e8121 11-Nov-2010 Jeff Hamilton <jham@android.com> Revert "Merge "Remove the My Tag feature." into gingerbread"

This reverts commit ef5694692f88bb91ed6ee1191b11a66ec594ff39, reversing
changes made to 65816a32ee2c2181895e3be636f3173a6e769f67.
NfcAdapter.aidl
fcAdapter.java
575a6bbfe0300b670ce7403c9dddd1298ec49e20 03-Nov-2010 Jeff Hamilton <jham@android.com> Remove the My Tag feature.

Change-Id: I9167121da2fa66ddae23386d24fef7bcc64eb3f1
NfcAdapter.aidl
fcAdapter.java
3ebd59bb5dc9f421fd2b9b789ea824746d58fff7 03-Nov-2010 Jason parks <jparks@google.com> Return a zero length byte from toByteArray instead of null.

Change-Id: I67b388099c72a0d2ec6b429caea8f29bf8f7a75a
defMessage.java
275708c82cad1119d645b4be533b1ad0088e148c 02-Nov-2010 Nick Pelly <npelly@google.com> Remove timeout support.

The implementation was guarenteed to cause deadlock when a timeout was set.

Change-Id: I59444ea784eb9057c6c4c9e9123f558b3ef5eef6
Signed-off-by: Nick Pelly <npelly@google.com>
LlcpServiceSocket.aidl
LlcpSocket.aidl
11b075e218b9921a953eeebe73fcd1a8a81f764b 28-Oct-2010 Nick Pelly <npelly@google.com> Hide some NFC API's.

We are leaving enough API so that you can see when any Tag is discovered,
get its ID, and get its NDEF messages.

But for advanced use - creating tag connections and writing messages - we have
2 problems. Firstly a lot of the code is untested
(RawTagConnection.transceive()), or in some cases known not to work
(NdefTagConnection.write()). Secondly, there is still debate about how to
best expose information about Tags.

The set of data/methods exposed for a Tag changes completely depending on the
tag technology. There may be multiple sets of technology implemented in a
single tag. Tag A may have technology X and Y, Tag B may have technology Y
and Z. Furthermore, some NFC controllers will be not be able to use all
technologies, and so Android Device 1 may see technology X and Y on Tag A but
Android device 2 may only see technology X. So we have a pretty challenging
set of constraints to work under, and we are not convinced the current Tag and
NdefTag class is the best approach going forwards.

The Tag application should be able to remain unbundled, since it just needs to
get incoming NDEF Messages.

Change-Id: Ic09f094f33794e10f8d730fffe011c9a5957e0ac
Signed-off-by: Nick Pelly <npelly@google.com>
ormatException.java
defMessage.java
defRecord.java
defTag.java
defTagConnection.java
fcAdapter.java
awTagConnection.java
ag.java
ackage.html
6d55e1342fc35c26dd97700ae791b34668266018 27-Oct-2010 Nick Pelly <npelly@google.com> Make best effort attempt to recover NFC service when it dies.

Retrieve the service again from ServiceManager on RemoteException.

Change-Id: Ie227b52019e7deafeab712af1addd6d957f7a8ee
Signed-off-by: Nick Pelly <npelly@google.com>
defTagConnection.java
fcAdapter.java
awTagConnection.java
68a5c9f3cf7292beec7ff4769b2005fed0438a7e 26-Oct-2010 Jeff Hamilton <jham@android.com> Add a way to get a string for an error code.

Change-Id: I133e974c656eb558349cbc3f9a2caf5b18c8fc3d
rrorCodes.java
e2e4ea9ea8f5724403e6267d193a740dc7c78785 25-Oct-2010 Sylvain Fonteneau <sylvain.fonteneau@trusted-logic.com> 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>
defTag.java
awTagConnection.java
ag.java
416d72f4b6e68439828b9c189bd10cc0004f0f88 25-Oct-2010 Nick Pelly <npelly@google.com> Document getPollBytes() and getActivationBytes().

No code change.

Change-Id: Ideb427b2684b9f9296abefb7c97eabc52db73ee0
Signed-off-by: Nick Pelly <npelly@google.com>
ag.java
07f3bee2db8b6e93ebbf7222676bd9f468e85569 22-Oct-2010 Nick Pelly <npelly@google.com> 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>
defTag.java
defTagConnection.java
fcAdapter.java
awTagConnection.java
ag.java
da83f513ca661cd2bb1e6f1c8b64b716205bae48 22-Oct-2010 Jeff Hamilton <jham@android.com> Unhide some NFC APIs that are required for the Tag app.

Change-Id: Ic64e00476132dbf4644de5c465e06fe11a264508
defMessage.java
defRecord.java
a71354d76689802152c33af257092d639c03c421 19-Oct-2010 Sylvain Fonteneau <sylvain.fonteneau@trusted-logic.com> 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>
NfcTag.aidl
awTagConnection.java
7ea5c45e8d89f59065f088d4e11cceeeed9d64d1 21-Oct-2010 Nick Pelly <npelly@google.com> 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>
fcAdapter.java
dd7341f775ca4d86091f4106d6dfef9214073a7d 18-Oct-2010 Sylvain Fonteneau <sylvain.fonteneau@trusted-logic.com> 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
defRecord.java
afb082dba5232a45a7563e085f12284f7d5ffc1d 18-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> 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
fcAdapter.java
fdf9086e24f4720ee9fbc852b980041f126aa3c2 18-Oct-2010 Nick Pelly <npelly@google.com> Prevent use of NFC api if device is not featurized for NFC.

Change-Id: I8724cb947223b7b60814d0be51e1122123ebb98a
Signed-off-by: Nick Pelly <npelly@google.com>
fcAdapter.java
e47150e933e6f610546f57183477f324566e521e 18-Oct-2010 Nick Pelly <npelly@google.com> 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>
defTagConnection.java
fcAdapter.java
awTagConnection.java
a926540d5455a973dd8ca19c00c108620d9c68c2 15-Oct-2010 Sylvain Fonteneau <sylvain.fonteneau@trusted-logic.com> 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>
defTag.java
defTagConnection.java
fcAdapter.java
awTagConnection.java
ag.java
6df23609d4c1f257b11d67b965e5b63cbdf26fcd 16-Oct-2010 Nick Kralevich <nnk@google.com> range checking for tnf

Change-Id: Ie94acd598d3b8b349ffa98cef0f64ef8fa9f9612
defRecord.java
c9f7890a203a013646650a695157277df81b6a17 15-Oct-2010 Scott Main <smain@google.com> Revise some javadocs for NFC; add package description

Change-Id: I60223e2ad24af98b3b16a74960365185096ae614
defMessage.java
defRecord.java
defTag.java
defTagConnection.java
fcAdapter.java
awTagConnection.java
ag.java
ackage.html
bc21fdefdfbeba1754c6cd339c7dd8e8f1d6fd48 14-Oct-2010 Nick Pelly <npelly@google.com> 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>
fcAdapter.java
590b73bc5b8e5f7b59bff1d9264a52388a5162e6 12-Oct-2010 Nick Pelly <npelly@google.com> 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>
rrorCodes.java
ormatException.java
LlcpConnectionlessSocket.aidl
LlcpServiceSocket.aidl
LlcpSocket.aidl
NdefTag.aidl
NfcAdapter.aidl
NfcTag.aidl
P2pInitiator.aidl
P2pTarget.aidl
lcpPacket.aidl
lcpPacket.java
defMessage.aidl
defMessage.java
defRecord.aidl
defRecord.java
defTag.aidl
defTag.java
defTagConnection.java
fcAdapter.java
awTagConnection.java
ag.aidl
ag.java
dc993791fc3cf7a270921f7419b0c6b875bbd92b 04-Oct-2010 Nick Pelly <npelly@google.com> New API stubs: NdefMessage and NdefRecord.

NDEF Messages and NDEF Record data classes.

Change-Id: I9b7114773281b0eb9680f595c95ac79943d2903b
Signed-off-by: Nick Pelly <npelly@google.com>
defMessage.java
defRecord.java