diff --git a/api/current.xml b/api/current.xml index 3c5bace8d011e..da10f892cfd3f 100644 --- a/api/current.xml +++ b/api/current.xml @@ -118348,6 +118348,21 @@ visibility="public" > + + + + + + - - - - - - + * @return TagTechnology object, or null if not present + */ + public TagTechnology getTechnology(Tag tag, int tech) { + return tag.getTechnology(NfcAdapter.this, tech); + } + /** * Set the NDEF Message that this NFC adapter should appear as to Tag * readers. diff --git a/core/java/android/nfc/Tag.java b/core/java/android/nfc/Tag.java index 6cdd9f130497e..7bd22891b7d5f 100644 --- a/core/java/android/nfc/Tag.java +++ b/core/java/android/nfc/Tag.java @@ -45,7 +45,7 @@ import java.util.Arrays; * in {@link NfcAdapter#ACTION_TAG_DISCOVERED} intents. A {@link Tag} object is immutable * and represents the state of the tag at the time of discovery. It can be * directly queried for its UID and Type, or used to create a {@link TagTechnology} - * (with {@link Tag#getTechnology}). + * (with {@link NfcAdapter#getTechnology}). *

* A {@link Tag} can be used to create a {@link TagTechnology} only while the tag is in * range. If it is removed and then returned to range, then the most recent @@ -84,7 +84,7 @@ public class Tag implements Parcelable { /** * Construct a mock Tag. *

This is an application constructed tag, so NfcAdapter methods on this - * Tag such as {@link #getTechnology} may fail with + * Tag such as {@link NfcAdapter#getTechnology} may fail with * {@link IllegalArgumentException} since it does not represent a physical Tag. *

This constructor might be useful for mock testing. * @param id The tag identifier, can be null @@ -127,10 +127,7 @@ public class Tag implements Parcelable { return Arrays.copyOf(mTechList, mTechList.length); } - /** - * Returns the technology, or null if not present - */ - public TagTechnology getTechnology(NfcAdapter adapter, int tech) { + /*package*/ TagTechnology getTechnology(NfcAdapter adapter, int tech) { int pos = -1; for (int idx = 0; idx < mTechList.length; idx++) { if (mTechList[idx] == tech) { diff --git a/core/java/android/nfc/technology/IsoDep.java b/core/java/android/nfc/technology/IsoDep.java index ff11eb2ec4a3d..b301de9dfa12f 100644 --- a/core/java/android/nfc/technology/IsoDep.java +++ b/core/java/android/nfc/technology/IsoDep.java @@ -27,7 +27,7 @@ import java.io.IOException; * A low-level connection to a {@link Tag} using the ISO-DEP technology, also known as * ISO1443-4. * - *

You can acquire this kind of connection with {@link Tag#getTechnology}. + *

You can acquire this kind of connection with {@link NfcAdapter#getTechnology}. * Use this class to send and receive data with {@link #transceive transceive()}. * *

Applications must implement their own protocol stack on top of diff --git a/core/java/android/nfc/technology/MifareClassic.java b/core/java/android/nfc/technology/MifareClassic.java index c5fb361a2ef26..3be38fe81860c 100644 --- a/core/java/android/nfc/technology/MifareClassic.java +++ b/core/java/android/nfc/technology/MifareClassic.java @@ -74,7 +74,7 @@ public final class MifareClassic extends BasicTagTechnology { super(adapter, tag, TagTechnology.MIFARE_CLASSIC); // Check if this could actually be a Mifare - NfcA a = (NfcA) tag.getTechnology(adapter, TagTechnology.NFC_A); + NfcA a = (NfcA) adapter.getTechnology(tag, TagTechnology.NFC_A); //short[] ATQA = getATQA(tag); mIsEmulated = false; diff --git a/core/java/android/nfc/technology/MifareUltralight.java b/core/java/android/nfc/technology/MifareUltralight.java index e53061faf6821..525b85bb8fca8 100644 --- a/core/java/android/nfc/technology/MifareUltralight.java +++ b/core/java/android/nfc/technology/MifareUltralight.java @@ -47,7 +47,7 @@ public final class MifareUltralight extends BasicTagTechnology { super(adapter, tag, TagTechnology.MIFARE_ULTRALIGHT); // Check if this could actually be a Mifare - NfcA a = (NfcA) tag.getTechnology(adapter, TagTechnology.NFC_A); + NfcA a = (NfcA) adapter.getTechnology(tag, TagTechnology.NFC_A); mType = TYPE_UNKNOWN; diff --git a/core/java/android/nfc/technology/Ndef.java b/core/java/android/nfc/technology/Ndef.java index 3c08c84c85f2e..ddcec69851c7a 100644 --- a/core/java/android/nfc/technology/Ndef.java +++ b/core/java/android/nfc/technology/Ndef.java @@ -31,7 +31,7 @@ import java.io.IOException; * to interact with NDEF data. MiFare Classic cards that present NDEF data may also be used * via this class. To determine the exact technology being used call {@link #getTechnologyId()} * - *

You can acquire this kind of connection with {@link Tag#getTechnology}. + *

You can acquire this kind of connection with {@link NfcAdapter#getTechnology}. * *

Note: * Use of this class requires the {@link android.Manifest.permission#NFC} diff --git a/core/java/android/nfc/technology/NdefFormatable.java b/core/java/android/nfc/technology/NdefFormatable.java index 7fa624fc35340..11161f14bfcc1 100644 --- a/core/java/android/nfc/technology/NdefFormatable.java +++ b/core/java/android/nfc/technology/NdefFormatable.java @@ -29,7 +29,7 @@ import java.io.IOException; /** * An interface to a {@link Tag} allowing to format the tag as NDEF. * - *

You can acquire this kind of interface with {@link Tag#getTechnology}. + *

You can acquire this kind of interface with {@link NfcAdapter#getTechnology}. * *

Note: * Use of this class requires the {@link android.Manifest.permission#NFC} diff --git a/core/java/android/nfc/technology/NfcA.java b/core/java/android/nfc/technology/NfcA.java index 5cb8190b4fde6..20fe09eb51875 100644 --- a/core/java/android/nfc/technology/NfcA.java +++ b/core/java/android/nfc/technology/NfcA.java @@ -25,7 +25,7 @@ import android.os.RemoteException; * A low-level connection to a {@link Tag} using the NFC-A technology, also known as * ISO1443-3A. * - *

You can acquire this kind of connection with {@link Tag#getTechnology}. + *

You can acquire this kind of connection with {@link NfcAdapter#getTechnology}. * Use this class to send and receive data with {@link #transceive transceive()}. * *

Applications must implement their own protocol stack on top of diff --git a/core/java/android/nfc/technology/NfcB.java b/core/java/android/nfc/technology/NfcB.java index dc9dd7a3d84f2..767558ebf8a44 100644 --- a/core/java/android/nfc/technology/NfcB.java +++ b/core/java/android/nfc/technology/NfcB.java @@ -25,7 +25,7 @@ import android.os.RemoteException; * A low-level connection to a {@link Tag} using the NFC-B technology, also known as * ISO1443-3B. * - *

You can acquire this kind of connection with {@link Tag#getTechnology}. + *

You can acquire this kind of connection with {@link NfcAdapter#getTechnology}. * Use this class to send and receive data with {@link #transceive transceive()}. * *

Applications must implement their own protocol stack on top of diff --git a/core/java/android/nfc/technology/NfcF.java b/core/java/android/nfc/technology/NfcF.java index dd0e2f94fda29..f7f1fd3a9db70 100644 --- a/core/java/android/nfc/technology/NfcF.java +++ b/core/java/android/nfc/technology/NfcF.java @@ -25,7 +25,7 @@ import android.os.RemoteException; * A low-level connection to a {@link Tag} using the NFC-F technology, also known as * JIS6319-4. * - *

You can acquire this kind of connection with {@link Tag#getTechnology}. + *

You can acquire this kind of connection with {@link NfcAdapter#getTechnology}. * Use this class to send and receive data with {@link #transceive transceive()}. * *

Applications must implement their own protocol stack on top of diff --git a/core/java/android/nfc/technology/NfcV.java b/core/java/android/nfc/technology/NfcV.java index da73f5d01b173..4b51119b13e8b 100644 --- a/core/java/android/nfc/technology/NfcV.java +++ b/core/java/android/nfc/technology/NfcV.java @@ -25,7 +25,7 @@ import android.os.RemoteException; * A low-level connection to a {@link Tag} using the NFC-V technology, also known as * ISO15693. * - *

You can acquire this kind of connection with {@link Tag#getTechnology}. + *

You can acquire this kind of connection with {@link NfcAdapter#getTechnology}. * Use this class to send and receive data with {@link #transceive transceive()}. * *

Applications must implement their own protocol stack on top of