Fixed connect() failure from technology->ndef->technology.

Suppose you have a MifareClassic tag with NDEF; the following scenario failed
MifareClassic.connect()/close() -> Ndef.connect()/close() -> MifareClassic.connect() .

This last connect fails because the service refuses to connect any technology
on the same handle, except for NDEF. This check was too strict - it was only
intended to catch connecting to a NfcA technology on an IsoDep tag, as libNFC does not
support this. This change always allows connecting a tech on the same handle, except
when you want to connect a non-IsoDep technology on a tag that does have the IsoDep
technology on the same handle - in which case it refuses. This
matches exactly what libnfc supports.

Change-Id: I64d552b3cd51beb36712676492f36d182c605748
1 file changed
tree: 7afb9cae7a88c8062b906f818f6e5e701624b826
  1. jni/
  2. res/
  3. src/
  4. Android.mk
  5. AndroidManifest.xml