Based on what I'm seeing, I tend to agree. It's looking like I should be able to accomplish most what I'm after without too much trouble. -- Paul Christensen
On Mon, Mar 14, 2011 at 2:53 PM, Nick Pelly <[email protected]> wrote: > Hi Paul, > > My understanding is that those types of transactions always happen at the > ISO14443-4 (ISO-DEP) layer, or more accurately ISO7817-4 (APDU) which is > built on top of ISO-DEP. > > It's a really crappy bug, but should not get in the way of any real > use-cases. > > Nick > > On Mon, Mar 14, 2011 at 8:12 AM, Paul Christensen < > [email protected]> wrote: > >> Sweet! I found me a real live Android bug! Do I win a hat? :) >> >> I'm a little out of my element here, and was hoping to be able to work >> from code in an existing application, but in light of this, it looks like >> that will not be possible. >> Can you tell me, will communicating through IsoDep still allow me to >> retrieve data like the track2 data from credit cards, assuming I know the >> protocols to use? >> -- Paul Christensen >> >> >> >> On Fri, Mar 11, 2011 at 6:04 PM, Nick Pelly <[email protected]> wrote: >> >>> Sorry for the late reply, >>> >>> We have looked into this, and it is indeed a bug. >>> >>> On 2.3.3, NfcA.connect() and NfcB.connect() fail if the tag also >>> enumerates IsoDep. >>> >>> The good news is that most of the time IsoDep.connect() is what you want >>> :) >>> >>> We will address this issue in a future release. It's a little tricky >>> since we need to actually reconnect to the tag to drop back to NfcA/NfcB >>> from IsoDep. >>> >>> Thanks for bringing this to our attention, >>> >>> Nick >>> >>> On Mon, Mar 7, 2011 at 10:14 AM, Paul Christensen < >>> [email protected]> wrote: >>> >>>> Thanks. I appreciate you looking in to this. >>>> To verify, yes, I am only trying to connect to one tech at a time. >>>> I am not connecting to IsoDep, and then attempting to connect to >>>> NfcB/NfcA. >>>> I only know about IsoDep working because after failing to connect to >>>> NfcB, I swapped out my objects and attempted to connect to the same cards >>>> using IsoDep, which was successful. >>>> >>>> -- Paul Christensen >>>> >>>> >>>> >>>> On Mon, Mar 7, 2011 at 11:04 AM, Nick Pelly <[email protected]> wrote: >>>> >>>>> I'll try and reproduce. But I just want to make sure, are you only >>>>> connecting NfcB / NfcA, and never connecting IsoDep first? Because you can >>>>> only connect one tech at a time. >>>>> >>>>> Nick >>>>> >>>>> >>>>> On Mon, Mar 7, 2011 at 7:57 AM, Paul Christensen < >>>>> [email protected]> wrote: >>>>> >>>>>> Ok, for #1 I'll just keep trying the card and see if I can manage to >>>>>> talk to it. >>>>>> For the additional issues, the sequence of events and relevant code is >>>>>> as follows: >>>>>> I scan a card with my app set to receive the scans. The appropriate >>>>>> Activity opens, retrieves a Tag object, and executes an AsyncTask. >>>>>> The AsyncTask determines the card technology and based on the card >>>>>> technology, attempts to open a connection to that card as follows: >>>>>> private static NfcB getNfcBTag(Tag tag) throws Exception >>>>>> { >>>>>> NfcB myTag = NfcB.get(tag); >>>>>> try >>>>>> { >>>>>> if(!myTag.isConnected()) >>>>>> { >>>>>> myTag.connect(); >>>>>> } >>>>>> } >>>>>> catch(Exception e) >>>>>> { >>>>>> Log.e(TAG, e.getMessage()); >>>>>> } >>>>>> return myTag; >>>>>> } >>>>>> >>>>>> The above method throws an exception on myTag.connect(). The exception >>>>>> is a java.IOException, but the message and source are both null, so I >>>>>> have >>>>>> no idea why it's happening. Now, if I change this method to be IsoDep >>>>>> instead of NfcB (or NfcA, for that matter), I am able to successfully >>>>>> connect to the card, send a message to the card, and retrieve a response >>>>>> from that card. >>>>>> >>>>>> >>>>>> -- Paul Christensen >>>>>> >>>>>> >>>>>> >>>>>> On Sun, Mar 6, 2011 at 10:06 PM, Nick Pelly <[email protected]> wrote: >>>>>> >>>>>>> Hi Paul, >>>>>>> >>>>>>> For (1), it is very hard to discover NfcB credit card on the Nexus S. >>>>>>> Many NfcB credit cards only work well with high powered readers. That >>>>>>> said, >>>>>>> if you play with the credit card orientation against the back of the >>>>>>> Nexus S >>>>>>> (where the NFC antenna is) you should be able to eventually scan it. >>>>>>> >>>>>>> For (2), (3) and (4), can you provide some sample code, and tell us >>>>>>> exactly where it is failing. >>>>>>> >>>>>>> Nick >>>>>>> >>>>>>> >>>>>>> On Fri, Mar 4, 2011 at 10:30 AM, Paul Christensen < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>> Ok, so I've learned additional, somewhat less than encouraging >>>>>>>> things. >>>>>>>> >>>>>>>> 1. I have a Discover "Zip" card, no idea what the ISO technology >>>>>>>> is, all I do know is the Nexus S does not respond at all to this >>>>>>>> card. >>>>>>>> 2. I have a Visa NfcB card that will connect as IsoDep, but not >>>>>>>> as NfcB. >>>>>>>> 3. I have an Amex NfcB card that will connect as IsoDep, but not >>>>>>>> as NfcB. >>>>>>>> 4. I have a MasterCard NfcA card that will connect as IsoDep, >>>>>>>> but not as NfcA. >>>>>>>> >>>>>>>> Any thoughts would be greatly appreciated. >>>>>>>> >>>>>>>> -- >>>>>>>> You received this message because you are subscribed to the Google >>>>>>>> Groups "Android Developers" group. >>>>>>>> To post to this group, send email to >>>>>>>> [email protected] >>>>>>>> To unsubscribe from this group, send email to >>>>>>>> [email protected] >>>>>>>> For more options, visit this group at >>>>>>>> http://groups.google.com/group/android-developers?hl=en >>>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>> >>>> >>> >> > -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en

