1// Signature format: 2.0 2package android.nfc { 3 4 public final class AvailableNfcAntenna implements android.os.Parcelable { 5 ctor public AvailableNfcAntenna(int, int); 6 method public int describeContents(); 7 method public int getLocationX(); 8 method public int getLocationY(); 9 method public void writeToParcel(@NonNull android.os.Parcel, int); 10 field @NonNull public static final android.os.Parcelable.Creator<android.nfc.AvailableNfcAntenna> CREATOR; 11 } 12 13 public class FormatException extends java.lang.Exception { 14 ctor public FormatException(); 15 ctor public FormatException(String); 16 ctor public FormatException(String, Throwable); 17 } 18 19 public final class NdefMessage implements android.os.Parcelable { 20 ctor public NdefMessage(byte[]) throws android.nfc.FormatException; 21 ctor public NdefMessage(android.nfc.NdefRecord, android.nfc.NdefRecord...); 22 ctor public NdefMessage(android.nfc.NdefRecord[]); 23 method public int describeContents(); 24 method public int getByteArrayLength(); 25 method public android.nfc.NdefRecord[] getRecords(); 26 method public byte[] toByteArray(); 27 method public void writeToParcel(android.os.Parcel, int); 28 field @NonNull public static final android.os.Parcelable.Creator<android.nfc.NdefMessage> CREATOR; 29 } 30 31 public final class NdefRecord implements android.os.Parcelable { 32 ctor public NdefRecord(short, byte[], byte[], byte[]); 33 ctor @Deprecated public NdefRecord(byte[]) throws android.nfc.FormatException; 34 method public static android.nfc.NdefRecord createApplicationRecord(String); 35 method public static android.nfc.NdefRecord createExternal(String, String, byte[]); 36 method public static android.nfc.NdefRecord createMime(String, byte[]); 37 method public static android.nfc.NdefRecord createTextRecord(String, String); 38 method public static android.nfc.NdefRecord createUri(android.net.Uri); 39 method public static android.nfc.NdefRecord createUri(String); 40 method public int describeContents(); 41 method public byte[] getId(); 42 method public byte[] getPayload(); 43 method public short getTnf(); 44 method public byte[] getType(); 45 method @Deprecated public byte[] toByteArray(); 46 method public String toMimeType(); 47 method public android.net.Uri toUri(); 48 method public void writeToParcel(android.os.Parcel, int); 49 field @NonNull public static final android.os.Parcelable.Creator<android.nfc.NdefRecord> CREATOR; 50 field public static final byte[] RTD_ALTERNATIVE_CARRIER; 51 field public static final byte[] RTD_HANDOVER_CARRIER; 52 field public static final byte[] RTD_HANDOVER_REQUEST; 53 field public static final byte[] RTD_HANDOVER_SELECT; 54 field public static final byte[] RTD_SMART_POSTER; 55 field public static final byte[] RTD_TEXT; 56 field public static final byte[] RTD_URI; 57 field public static final short TNF_ABSOLUTE_URI = 3; // 0x3 58 field public static final short TNF_EMPTY = 0; // 0x0 59 field public static final short TNF_EXTERNAL_TYPE = 4; // 0x4 60 field public static final short TNF_MIME_MEDIA = 2; // 0x2 61 field public static final short TNF_UNCHANGED = 6; // 0x6 62 field public static final short TNF_UNKNOWN = 5; // 0x5 63 field public static final short TNF_WELL_KNOWN = 1; // 0x1 64 } 65 66 public final class NfcAdapter { 67 method @FlaggedApi("android.nfc.nfc_state_change") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean disable(); 68 method public void disableForegroundDispatch(android.app.Activity); 69 method public void disableReaderMode(android.app.Activity); 70 method @FlaggedApi("android.nfc.nfc_state_change") @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public boolean enable(); 71 method public void enableForegroundDispatch(android.app.Activity, android.app.PendingIntent, android.content.IntentFilter[], String[][]); 72 method public void enableReaderMode(android.app.Activity, android.nfc.NfcAdapter.ReaderCallback, int, android.os.Bundle); 73 method public static android.nfc.NfcAdapter getDefaultAdapter(android.content.Context); 74 method @Nullable public android.nfc.NfcAntennaInfo getNfcAntennaInfo(); 75 method @FlaggedApi("android.nfc.enable_nfc_charging") @Nullable public android.nfc.WlcListenerDeviceInfo getWlcListenerDeviceInfo(); 76 method public boolean ignore(android.nfc.Tag, int, android.nfc.NfcAdapter.OnTagRemovedListener, android.os.Handler); 77 method public boolean isEnabled(); 78 method @FlaggedApi("android.nfc.nfc_observe_mode") public boolean isObserveModeEnabled(); 79 method @FlaggedApi("android.nfc.nfc_observe_mode") public boolean isObserveModeSupported(); 80 method @FlaggedApi("android.nfc.enable_nfc_reader_option") public boolean isReaderOptionEnabled(); 81 method @FlaggedApi("android.nfc.enable_nfc_reader_option") public boolean isReaderOptionSupported(); 82 method public boolean isSecureNfcEnabled(); 83 method public boolean isSecureNfcSupported(); 84 method @FlaggedApi("android.nfc.enable_nfc_charging") public boolean isWlcEnabled(); 85 method @FlaggedApi("android.nfc.enable_nfc_set_discovery_tech") public void resetDiscoveryTechnology(@NonNull android.app.Activity); 86 method @FlaggedApi("android.nfc.enable_nfc_set_discovery_tech") public void setDiscoveryTechnology(@NonNull android.app.Activity, int, int); 87 method @FlaggedApi("android.nfc.nfc_observe_mode") public boolean setObserveModeEnabled(boolean); 88 field public static final String ACTION_ADAPTER_STATE_CHANGED = "android.nfc.action.ADAPTER_STATE_CHANGED"; 89 field public static final String ACTION_NDEF_DISCOVERED = "android.nfc.action.NDEF_DISCOVERED"; 90 field @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) public static final String ACTION_PREFERRED_PAYMENT_CHANGED = "android.nfc.action.PREFERRED_PAYMENT_CHANGED"; 91 field public static final String ACTION_TAG_DISCOVERED = "android.nfc.action.TAG_DISCOVERED"; 92 field public static final String ACTION_TECH_DISCOVERED = "android.nfc.action.TECH_DISCOVERED"; 93 field @RequiresPermission(android.Manifest.permission.NFC_TRANSACTION_EVENT) public static final String ACTION_TRANSACTION_DETECTED = "android.nfc.action.TRANSACTION_DETECTED"; 94 field public static final String EXTRA_ADAPTER_STATE = "android.nfc.extra.ADAPTER_STATE"; 95 field public static final String EXTRA_AID = "android.nfc.extra.AID"; 96 field public static final String EXTRA_DATA = "android.nfc.extra.DATA"; 97 field public static final String EXTRA_ID = "android.nfc.extra.ID"; 98 field public static final String EXTRA_NDEF_MESSAGES = "android.nfc.extra.NDEF_MESSAGES"; 99 field public static final String EXTRA_PREFERRED_PAYMENT_CHANGED_REASON = "android.nfc.extra.PREFERRED_PAYMENT_CHANGED_REASON"; 100 field public static final String EXTRA_READER_PRESENCE_CHECK_DELAY = "presence"; 101 field public static final String EXTRA_SECURE_ELEMENT_NAME = "android.nfc.extra.SECURE_ELEMENT_NAME"; 102 field public static final String EXTRA_TAG = "android.nfc.extra.TAG"; 103 field @FlaggedApi("android.nfc.enable_nfc_set_discovery_tech") public static final int FLAG_LISTEN_DISABLE = 0; // 0x0 104 field @FlaggedApi("android.nfc.enable_nfc_set_discovery_tech") public static final int FLAG_LISTEN_KEEP = -2147483648; // 0x80000000 105 field @FlaggedApi("android.nfc.enable_nfc_set_discovery_tech") public static final int FLAG_LISTEN_NFC_PASSIVE_A = 1; // 0x1 106 field @FlaggedApi("android.nfc.enable_nfc_set_discovery_tech") public static final int FLAG_LISTEN_NFC_PASSIVE_B = 2; // 0x2 107 field @FlaggedApi("android.nfc.enable_nfc_set_discovery_tech") public static final int FLAG_LISTEN_NFC_PASSIVE_F = 4; // 0x4 108 field @FlaggedApi("android.nfc.enable_nfc_set_discovery_tech") public static final int FLAG_READER_DISABLE = 0; // 0x0 109 field @FlaggedApi("android.nfc.enable_nfc_set_discovery_tech") public static final int FLAG_READER_KEEP = -2147483648; // 0x80000000 110 field public static final int FLAG_READER_NFC_A = 1; // 0x1 111 field public static final int FLAG_READER_NFC_B = 2; // 0x2 112 field public static final int FLAG_READER_NFC_BARCODE = 16; // 0x10 113 field public static final int FLAG_READER_NFC_F = 4; // 0x4 114 field public static final int FLAG_READER_NFC_V = 8; // 0x8 115 field public static final int FLAG_READER_NO_PLATFORM_SOUNDS = 256; // 0x100 116 field public static final int FLAG_READER_SKIP_NDEF_CHECK = 128; // 0x80 117 field public static final int PREFERRED_PAYMENT_CHANGED = 2; // 0x2 118 field public static final int PREFERRED_PAYMENT_LOADED = 1; // 0x1 119 field public static final int PREFERRED_PAYMENT_UPDATED = 3; // 0x3 120 field public static final int STATE_OFF = 1; // 0x1 121 field public static final int STATE_ON = 3; // 0x3 122 field public static final int STATE_TURNING_OFF = 4; // 0x4 123 field public static final int STATE_TURNING_ON = 2; // 0x2 124 } 125 126 @Deprecated public static interface NfcAdapter.CreateBeamUrisCallback { 127 method @Deprecated public android.net.Uri[] createBeamUris(android.nfc.NfcEvent); 128 } 129 130 @Deprecated public static interface NfcAdapter.CreateNdefMessageCallback { 131 method @Deprecated public android.nfc.NdefMessage createNdefMessage(android.nfc.NfcEvent); 132 } 133 134 @Deprecated public static interface NfcAdapter.OnNdefPushCompleteCallback { 135 method @Deprecated public void onNdefPushComplete(android.nfc.NfcEvent); 136 } 137 138 public static interface NfcAdapter.OnTagRemovedListener { 139 method public void onTagRemoved(); 140 } 141 142 public static interface NfcAdapter.ReaderCallback { 143 method public void onTagDiscovered(android.nfc.Tag); 144 } 145 146 public final class NfcAntennaInfo implements android.os.Parcelable { 147 ctor public NfcAntennaInfo(int, int, boolean, @NonNull java.util.List<android.nfc.AvailableNfcAntenna>); 148 method public int describeContents(); 149 method @NonNull public java.util.List<android.nfc.AvailableNfcAntenna> getAvailableNfcAntennas(); 150 method public int getDeviceHeight(); 151 method public int getDeviceWidth(); 152 method public boolean isDeviceFoldable(); 153 method public void writeToParcel(@NonNull android.os.Parcel, int); 154 field @NonNull public static final android.os.Parcelable.Creator<android.nfc.NfcAntennaInfo> CREATOR; 155 } 156 157 public final class NfcEvent { 158 field public final android.nfc.NfcAdapter nfcAdapter; 159 field public final int peerLlcpMajorVersion; 160 field public final int peerLlcpMinorVersion; 161 } 162 163 public final class NfcManager { 164 method public android.nfc.NfcAdapter getDefaultAdapter(); 165 } 166 167 public final class Tag implements android.os.Parcelable { 168 method public int describeContents(); 169 method public byte[] getId(); 170 method public String[] getTechList(); 171 method public void writeToParcel(android.os.Parcel, int); 172 field @NonNull public static final android.os.Parcelable.Creator<android.nfc.Tag> CREATOR; 173 } 174 175 public class TagLostException extends java.io.IOException { 176 ctor public TagLostException(); 177 ctor public TagLostException(String); 178 } 179 180 @FlaggedApi("android.nfc.enable_nfc_charging") public final class WlcListenerDeviceInfo implements android.os.Parcelable { 181 ctor public WlcListenerDeviceInfo(int, double, double, int); 182 method public int describeContents(); 183 method @FloatRange(from=0.0, to=100.0) public double getBatteryLevel(); 184 method public int getProductId(); 185 method public int getState(); 186 method public double getTemperature(); 187 method public void writeToParcel(@NonNull android.os.Parcel, int); 188 field @NonNull public static final android.os.Parcelable.Creator<android.nfc.WlcListenerDeviceInfo> CREATOR; 189 field public static final int STATE_CONNECTED_CHARGING = 2; // 0x2 190 field public static final int STATE_CONNECTED_DISCHARGING = 3; // 0x3 191 field public static final int STATE_DISCONNECTED = 1; // 0x1 192 } 193 194} 195 196package android.nfc.cardemulation { 197 198 public final class CardEmulation { 199 method public boolean categoryAllowsForegroundPreference(String); 200 method @Nullable @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) public java.util.List<java.lang.String> getAidsForPreferredPaymentService(); 201 method public java.util.List<java.lang.String> getAidsForService(android.content.ComponentName, String); 202 method @Nullable @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) public CharSequence getDescriptionForPreferredPaymentService(); 203 method public static android.nfc.cardemulation.CardEmulation getInstance(android.nfc.NfcAdapter); 204 method @Nullable @RequiresPermission(android.Manifest.permission.NFC_PREFERRED_PAYMENT_INFO) public String getRouteDestinationForPreferredPaymentService(); 205 method public int getSelectionModeForCategory(String); 206 method public boolean isDefaultServiceForAid(android.content.ComponentName, String); 207 method public boolean isDefaultServiceForCategory(android.content.ComponentName, String); 208 method public boolean registerAidsForService(android.content.ComponentName, String, java.util.List<java.lang.String>); 209 method @FlaggedApi("android.nfc.nfc_read_polling_loop") public boolean registerPollingLoopFilterForService(@NonNull android.content.ComponentName, @NonNull String, boolean); 210 method @FlaggedApi("android.nfc.nfc_read_polling_loop") public boolean registerPollingLoopPatternFilterForService(@NonNull android.content.ComponentName, @NonNull String, boolean); 211 method public boolean removeAidsForService(android.content.ComponentName, String); 212 method @FlaggedApi("android.nfc.nfc_read_polling_loop") public boolean removePollingLoopFilterForService(@NonNull android.content.ComponentName, @NonNull String); 213 method @FlaggedApi("android.nfc.nfc_read_polling_loop") public boolean removePollingLoopPatternFilterForService(@NonNull android.content.ComponentName, @NonNull String); 214 method @NonNull @RequiresPermission(android.Manifest.permission.NFC) public boolean setOffHostForService(@NonNull android.content.ComponentName, @NonNull String); 215 method public boolean setPreferredService(android.app.Activity, android.content.ComponentName); 216 method @FlaggedApi("android.nfc.nfc_observe_mode") public boolean setShouldDefaultToObserveModeForService(@NonNull android.content.ComponentName, boolean); 217 method public boolean supportsAidPrefixRegistration(); 218 method @NonNull @RequiresPermission(android.Manifest.permission.NFC) public boolean unsetOffHostForService(@NonNull android.content.ComponentName); 219 method public boolean unsetPreferredService(android.app.Activity); 220 field @Deprecated public static final String ACTION_CHANGE_DEFAULT = "android.nfc.cardemulation.action.ACTION_CHANGE_DEFAULT"; 221 field public static final String CATEGORY_OTHER = "other"; 222 field public static final String CATEGORY_PAYMENT = "payment"; 223 field public static final String EXTRA_CATEGORY = "category"; 224 field public static final String EXTRA_SERVICE_COMPONENT = "component"; 225 field public static final int SELECTION_MODE_ALWAYS_ASK = 1; // 0x1 226 field public static final int SELECTION_MODE_ASK_IF_CONFLICT = 2; // 0x2 227 field public static final int SELECTION_MODE_PREFER_DEFAULT = 0; // 0x0 228 } 229 230 public abstract class HostApduService extends android.app.Service { 231 ctor public HostApduService(); 232 method public final void notifyUnhandled(); 233 method public final android.os.IBinder onBind(android.content.Intent); 234 method public abstract void onDeactivated(int); 235 method public abstract byte[] processCommandApdu(byte[], android.os.Bundle); 236 method @FlaggedApi("android.nfc.nfc_read_polling_loop") public void processPollingFrames(@NonNull java.util.List<android.nfc.cardemulation.PollingFrame>); 237 method public final void sendResponseApdu(byte[]); 238 field public static final int DEACTIVATION_DESELECTED = 1; // 0x1 239 field public static final int DEACTIVATION_LINK_LOSS = 0; // 0x0 240 field public static final String SERVICE_INTERFACE = "android.nfc.cardemulation.action.HOST_APDU_SERVICE"; 241 field public static final String SERVICE_META_DATA = "android.nfc.cardemulation.host_apdu_service"; 242 } 243 244 public abstract class HostNfcFService extends android.app.Service { 245 ctor public HostNfcFService(); 246 method public final android.os.IBinder onBind(android.content.Intent); 247 method public abstract void onDeactivated(int); 248 method public abstract byte[] processNfcFPacket(byte[], android.os.Bundle); 249 method public final void sendResponsePacket(byte[]); 250 field public static final int DEACTIVATION_LINK_LOSS = 0; // 0x0 251 field public static final String SERVICE_INTERFACE = "android.nfc.cardemulation.action.HOST_NFCF_SERVICE"; 252 field public static final String SERVICE_META_DATA = "android.nfc.cardemulation.host_nfcf_service"; 253 } 254 255 public final class NfcFCardEmulation { 256 method public boolean disableService(android.app.Activity) throws java.lang.RuntimeException; 257 method public boolean enableService(android.app.Activity, android.content.ComponentName) throws java.lang.RuntimeException; 258 method public static android.nfc.cardemulation.NfcFCardEmulation getInstance(android.nfc.NfcAdapter); 259 method public String getNfcid2ForService(android.content.ComponentName) throws java.lang.RuntimeException; 260 method public String getSystemCodeForService(android.content.ComponentName) throws java.lang.RuntimeException; 261 method public boolean registerSystemCodeForService(android.content.ComponentName, String) throws java.lang.RuntimeException; 262 method public boolean setNfcid2ForService(android.content.ComponentName, String) throws java.lang.RuntimeException; 263 method public boolean unregisterSystemCodeForService(android.content.ComponentName) throws java.lang.RuntimeException; 264 } 265 266 public abstract class OffHostApduService extends android.app.Service { 267 ctor public OffHostApduService(); 268 field public static final String SERVICE_INTERFACE = "android.nfc.cardemulation.action.OFF_HOST_APDU_SERVICE"; 269 field public static final String SERVICE_META_DATA = "android.nfc.cardemulation.off_host_apdu_service"; 270 } 271 272 @FlaggedApi("android.nfc.nfc_read_polling_loop") public final class PollingFrame implements android.os.Parcelable { 273 method public int describeContents(); 274 method @NonNull public byte[] getData(); 275 method public long getTimestamp(); 276 method public boolean getTriggeredAutoTransact(); 277 method public int getType(); 278 method public int getVendorSpecificGain(); 279 method public void writeToParcel(@NonNull android.os.Parcel, int); 280 field @NonNull public static final android.os.Parcelable.Creator<android.nfc.cardemulation.PollingFrame> CREATOR; 281 field @FlaggedApi("android.nfc.nfc_read_polling_loop") public static final int POLLING_LOOP_TYPE_A = 65; // 0x41 282 field @FlaggedApi("android.nfc.nfc_read_polling_loop") public static final int POLLING_LOOP_TYPE_B = 66; // 0x42 283 field @FlaggedApi("android.nfc.nfc_read_polling_loop") public static final int POLLING_LOOP_TYPE_F = 70; // 0x46 284 field @FlaggedApi("android.nfc.nfc_read_polling_loop") public static final int POLLING_LOOP_TYPE_OFF = 88; // 0x58 285 field @FlaggedApi("android.nfc.nfc_read_polling_loop") public static final int POLLING_LOOP_TYPE_ON = 79; // 0x4f 286 field @FlaggedApi("android.nfc.nfc_read_polling_loop") public static final int POLLING_LOOP_TYPE_UNKNOWN = 85; // 0x55 287 } 288 289} 290 291package android.nfc.tech { 292 293 public final class IsoDep implements android.nfc.tech.TagTechnology { 294 method public void close() throws java.io.IOException; 295 method public void connect() throws java.io.IOException; 296 method public static android.nfc.tech.IsoDep get(android.nfc.Tag); 297 method public byte[] getHiLayerResponse(); 298 method public byte[] getHistoricalBytes(); 299 method public int getMaxTransceiveLength(); 300 method public android.nfc.Tag getTag(); 301 method public int getTimeout(); 302 method public boolean isConnected(); 303 method public boolean isExtendedLengthApduSupported(); 304 method public void setTimeout(int); 305 method public byte[] transceive(byte[]) throws java.io.IOException; 306 } 307 308 public final class MifareClassic implements android.nfc.tech.TagTechnology { 309 method public boolean authenticateSectorWithKeyA(int, byte[]) throws java.io.IOException; 310 method public boolean authenticateSectorWithKeyB(int, byte[]) throws java.io.IOException; 311 method public int blockToSector(int); 312 method public void close() throws java.io.IOException; 313 method public void connect() throws java.io.IOException; 314 method public void decrement(int, int) throws java.io.IOException; 315 method public static android.nfc.tech.MifareClassic get(android.nfc.Tag); 316 method public int getBlockCount(); 317 method public int getBlockCountInSector(int); 318 method public int getMaxTransceiveLength(); 319 method public int getSectorCount(); 320 method public int getSize(); 321 method public android.nfc.Tag getTag(); 322 method public int getTimeout(); 323 method public int getType(); 324 method public void increment(int, int) throws java.io.IOException; 325 method public boolean isConnected(); 326 method public byte[] readBlock(int) throws java.io.IOException; 327 method public void restore(int) throws java.io.IOException; 328 method public int sectorToBlock(int); 329 method public void setTimeout(int); 330 method public byte[] transceive(byte[]) throws java.io.IOException; 331 method public void transfer(int) throws java.io.IOException; 332 method public void writeBlock(int, byte[]) throws java.io.IOException; 333 field public static final int BLOCK_SIZE = 16; // 0x10 334 field public static final byte[] KEY_DEFAULT; 335 field public static final byte[] KEY_MIFARE_APPLICATION_DIRECTORY; 336 field public static final byte[] KEY_NFC_FORUM; 337 field public static final int SIZE_1K = 1024; // 0x400 338 field public static final int SIZE_2K = 2048; // 0x800 339 field public static final int SIZE_4K = 4096; // 0x1000 340 field public static final int SIZE_MINI = 320; // 0x140 341 field public static final int TYPE_CLASSIC = 0; // 0x0 342 field public static final int TYPE_PLUS = 1; // 0x1 343 field public static final int TYPE_PRO = 2; // 0x2 344 field public static final int TYPE_UNKNOWN = -1; // 0xffffffff 345 } 346 347 public final class MifareUltralight implements android.nfc.tech.TagTechnology { 348 method public void close() throws java.io.IOException; 349 method public void connect() throws java.io.IOException; 350 method public static android.nfc.tech.MifareUltralight get(android.nfc.Tag); 351 method public int getMaxTransceiveLength(); 352 method public android.nfc.Tag getTag(); 353 method public int getTimeout(); 354 method public int getType(); 355 method public boolean isConnected(); 356 method public byte[] readPages(int) throws java.io.IOException; 357 method public void setTimeout(int); 358 method public byte[] transceive(byte[]) throws java.io.IOException; 359 method public void writePage(int, byte[]) throws java.io.IOException; 360 field public static final int PAGE_SIZE = 4; // 0x4 361 field public static final int TYPE_ULTRALIGHT = 1; // 0x1 362 field public static final int TYPE_ULTRALIGHT_C = 2; // 0x2 363 field public static final int TYPE_UNKNOWN = -1; // 0xffffffff 364 } 365 366 public final class Ndef implements android.nfc.tech.TagTechnology { 367 method public boolean canMakeReadOnly(); 368 method public void close() throws java.io.IOException; 369 method public void connect() throws java.io.IOException; 370 method public static android.nfc.tech.Ndef get(android.nfc.Tag); 371 method public android.nfc.NdefMessage getCachedNdefMessage(); 372 method public int getMaxSize(); 373 method public android.nfc.NdefMessage getNdefMessage() throws android.nfc.FormatException, java.io.IOException; 374 method public android.nfc.Tag getTag(); 375 method public String getType(); 376 method public boolean isConnected(); 377 method public boolean isWritable(); 378 method public boolean makeReadOnly() throws java.io.IOException; 379 method public void writeNdefMessage(android.nfc.NdefMessage) throws android.nfc.FormatException, java.io.IOException; 380 field public static final String MIFARE_CLASSIC = "com.nxp.ndef.mifareclassic"; 381 field public static final String NFC_FORUM_TYPE_1 = "org.nfcforum.ndef.type1"; 382 field public static final String NFC_FORUM_TYPE_2 = "org.nfcforum.ndef.type2"; 383 field public static final String NFC_FORUM_TYPE_3 = "org.nfcforum.ndef.type3"; 384 field public static final String NFC_FORUM_TYPE_4 = "org.nfcforum.ndef.type4"; 385 } 386 387 public final class NdefFormatable implements android.nfc.tech.TagTechnology { 388 method public void close() throws java.io.IOException; 389 method public void connect() throws java.io.IOException; 390 method public void format(android.nfc.NdefMessage) throws android.nfc.FormatException, java.io.IOException; 391 method public void formatReadOnly(android.nfc.NdefMessage) throws android.nfc.FormatException, java.io.IOException; 392 method public static android.nfc.tech.NdefFormatable get(android.nfc.Tag); 393 method public android.nfc.Tag getTag(); 394 method public boolean isConnected(); 395 } 396 397 public final class NfcA implements android.nfc.tech.TagTechnology { 398 method public void close() throws java.io.IOException; 399 method public void connect() throws java.io.IOException; 400 method public static android.nfc.tech.NfcA get(android.nfc.Tag); 401 method public byte[] getAtqa(); 402 method public int getMaxTransceiveLength(); 403 method public short getSak(); 404 method public android.nfc.Tag getTag(); 405 method public int getTimeout(); 406 method public boolean isConnected(); 407 method public void setTimeout(int); 408 method public byte[] transceive(byte[]) throws java.io.IOException; 409 } 410 411 public final class NfcB implements android.nfc.tech.TagTechnology { 412 method public void close() throws java.io.IOException; 413 method public void connect() throws java.io.IOException; 414 method public static android.nfc.tech.NfcB get(android.nfc.Tag); 415 method public byte[] getApplicationData(); 416 method public int getMaxTransceiveLength(); 417 method public byte[] getProtocolInfo(); 418 method public android.nfc.Tag getTag(); 419 method public boolean isConnected(); 420 method public byte[] transceive(byte[]) throws java.io.IOException; 421 } 422 423 public final class NfcBarcode implements android.nfc.tech.TagTechnology { 424 method public void close() throws java.io.IOException; 425 method public void connect() throws java.io.IOException; 426 method public static android.nfc.tech.NfcBarcode get(android.nfc.Tag); 427 method public byte[] getBarcode(); 428 method public android.nfc.Tag getTag(); 429 method public int getType(); 430 method public boolean isConnected(); 431 field public static final int TYPE_KOVIO = 1; // 0x1 432 field public static final int TYPE_UNKNOWN = -1; // 0xffffffff 433 } 434 435 public final class NfcF implements android.nfc.tech.TagTechnology { 436 method public void close() throws java.io.IOException; 437 method public void connect() throws java.io.IOException; 438 method public static android.nfc.tech.NfcF get(android.nfc.Tag); 439 method public byte[] getManufacturer(); 440 method public int getMaxTransceiveLength(); 441 method public byte[] getSystemCode(); 442 method public android.nfc.Tag getTag(); 443 method public int getTimeout(); 444 method public boolean isConnected(); 445 method public void setTimeout(int); 446 method public byte[] transceive(byte[]) throws java.io.IOException; 447 } 448 449 public final class NfcV implements android.nfc.tech.TagTechnology { 450 method public void close() throws java.io.IOException; 451 method public void connect() throws java.io.IOException; 452 method public static android.nfc.tech.NfcV get(android.nfc.Tag); 453 method public byte getDsfId(); 454 method public int getMaxTransceiveLength(); 455 method public byte getResponseFlags(); 456 method public android.nfc.Tag getTag(); 457 method public boolean isConnected(); 458 method public byte[] transceive(byte[]) throws java.io.IOException; 459 } 460 461 public interface TagTechnology extends java.io.Closeable { 462 method public void connect() throws java.io.IOException; 463 method public android.nfc.Tag getTag(); 464 method public boolean isConnected(); 465 } 466 467} 468 469