Merge "New API stubs: NdefMessage and NdefRecord." into gingerbread
This commit is contained in:
342
api/current.xml
342
api/current.xml
@@ -101012,6 +101012,348 @@
|
||||
</method>
|
||||
</class>
|
||||
</package>
|
||||
<package name="android.nfc"
|
||||
>
|
||||
<class name="NdefMessage"
|
||||
extends="java.lang.Object"
|
||||
abstract="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<implements name="android.os.Parcelable">
|
||||
</implements>
|
||||
<constructor name="NdefMessage"
|
||||
type="android.nfc.NdefMessage"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<parameter name="records" type="android.nfc.NdefRecord[]">
|
||||
</parameter>
|
||||
</constructor>
|
||||
<method name="describeContents"
|
||||
return="int"
|
||||
abstract="false"
|
||||
native="false"
|
||||
synchronized="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</method>
|
||||
<method name="getRecords"
|
||||
return="android.nfc.NdefRecord[]"
|
||||
abstract="false"
|
||||
native="false"
|
||||
synchronized="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</method>
|
||||
<method name="writeToParcel"
|
||||
return="void"
|
||||
abstract="false"
|
||||
native="false"
|
||||
synchronized="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<parameter name="dest" type="android.os.Parcel">
|
||||
</parameter>
|
||||
<parameter name="flags" type="int">
|
||||
</parameter>
|
||||
</method>
|
||||
<field name="CREATOR"
|
||||
type="android.os.Parcelable.Creator"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
</class>
|
||||
<class name="NdefRecord"
|
||||
extends="java.lang.Object"
|
||||
abstract="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<implements name="android.os.Parcelable">
|
||||
</implements>
|
||||
<constructor name="NdefRecord"
|
||||
type="android.nfc.NdefRecord"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<parameter name="tnf" type="short">
|
||||
</parameter>
|
||||
<parameter name="type" type="byte[]">
|
||||
</parameter>
|
||||
<parameter name="id" type="byte[]">
|
||||
</parameter>
|
||||
<parameter name="payload" type="byte[]">
|
||||
</parameter>
|
||||
</constructor>
|
||||
<constructor name="NdefRecord"
|
||||
type="android.nfc.NdefRecord"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<parameter name="data" type="byte[]">
|
||||
</parameter>
|
||||
</constructor>
|
||||
<method name="describeContents"
|
||||
return="int"
|
||||
abstract="false"
|
||||
native="false"
|
||||
synchronized="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</method>
|
||||
<method name="getId"
|
||||
return="byte[]"
|
||||
abstract="false"
|
||||
native="false"
|
||||
synchronized="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</method>
|
||||
<method name="getPayload"
|
||||
return="byte[]"
|
||||
abstract="false"
|
||||
native="false"
|
||||
synchronized="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</method>
|
||||
<method name="getTnf"
|
||||
return="short"
|
||||
abstract="false"
|
||||
native="false"
|
||||
synchronized="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</method>
|
||||
<method name="getType"
|
||||
return="byte[]"
|
||||
abstract="false"
|
||||
native="false"
|
||||
synchronized="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</method>
|
||||
<method name="writeToParcel"
|
||||
return="void"
|
||||
abstract="false"
|
||||
native="false"
|
||||
synchronized="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<parameter name="dest" type="android.os.Parcel">
|
||||
</parameter>
|
||||
<parameter name="flags" type="int">
|
||||
</parameter>
|
||||
</method>
|
||||
<field name="CREATOR"
|
||||
type="android.os.Parcelable.Creator"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="RTD_ALTERNATIVE_CARRIER"
|
||||
type="byte[]"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="null"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="RTD_HANDOVER_CARRIER"
|
||||
type="byte[]"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="null"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="RTD_HANDOVER_REQUEST"
|
||||
type="byte[]"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="null"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="RTD_HANDOVER_SELECT"
|
||||
type="byte[]"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="null"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="RTD_SMART_POSTER"
|
||||
type="byte[]"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="null"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="RTD_TEXT"
|
||||
type="byte[]"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="null"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="RTD_URI"
|
||||
type="byte[]"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="null"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="TNF_ABSOLUTE_URI"
|
||||
type="short"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="3"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="TNF_EMPTY"
|
||||
type="short"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="0"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="TNF_EXTERNAL_TYPE"
|
||||
type="short"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="4"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="TNF_MIME_MEDIA"
|
||||
type="short"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="2"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="TNF_UNCHANGED"
|
||||
type="short"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="6"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="TNF_UNKNOWN"
|
||||
type="short"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="5"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
<field name="TNF_WELL_KNOWN"
|
||||
type="short"
|
||||
transient="false"
|
||||
volatile="false"
|
||||
value="1"
|
||||
static="true"
|
||||
final="true"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</field>
|
||||
</class>
|
||||
</package>
|
||||
<package name="android.opengl"
|
||||
>
|
||||
<class name="ETC1"
|
||||
|
||||
89
core/java/android/nfc/NdefMessage.java
Normal file
89
core/java/android/nfc/NdefMessage.java
Normal file
@@ -0,0 +1,89 @@
|
||||
/*
|
||||
* Copyright (C) 2010 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.nfc;
|
||||
|
||||
import android.nfc.NdefRecord;
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
|
||||
import java.lang.UnsupportedOperationException;
|
||||
|
||||
/**
|
||||
* NDEF Message data.
|
||||
* <p>
|
||||
* Immutable data class. An NDEF message always contains zero or more NDEF
|
||||
* records.
|
||||
*/
|
||||
public class NdefMessage implements Parcelable {
|
||||
/**
|
||||
* Create an NDEF message from raw bytes.
|
||||
* <p>
|
||||
* Validation is performed to make sure the Record format headers are valid,
|
||||
* and the ID + TYPE + PAYLOAD fields are of the correct size.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
public NdefMessage(byte[] data) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* Create an NDEF message from NDEF records.
|
||||
*/
|
||||
public NdefMessage(NdefRecord[] records) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the NDEF records inside this NDEF message.
|
||||
*
|
||||
* @return array of zero or more NDEF records.
|
||||
*/
|
||||
public NdefRecord[] getRecords() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a byte array representation of this NDEF message.
|
||||
*
|
||||
* @return byte array
|
||||
* @hide
|
||||
*/
|
||||
public byte[] toByteArray() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int describeContents() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeToParcel(Parcel dest, int flags) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
public static final Parcelable.Creator<NdefMessage> CREATOR =
|
||||
new Parcelable.Creator<NdefMessage>() {
|
||||
public NdefMessage createFromParcel(Parcel in) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
public NdefMessage[] newArray(int size) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
};
|
||||
}
|
||||
231
core/java/android/nfc/NdefRecord.java
Normal file
231
core/java/android/nfc/NdefRecord.java
Normal file
@@ -0,0 +1,231 @@
|
||||
/*
|
||||
* Copyright (C) 2010 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.nfc;
|
||||
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
|
||||
import java.lang.UnsupportedOperationException;
|
||||
|
||||
/**
|
||||
* NDEF Record data.
|
||||
* <p>
|
||||
* Immutable data class. An NDEF record always contains
|
||||
* <ul>
|
||||
* <li>3-bit TNF field
|
||||
* <li>Variable length type
|
||||
* <li>Variable length ID
|
||||
* <li>Variable length payload
|
||||
* </ul>
|
||||
* The TNF (Type Name Format) field indicates how to interpret the type field.
|
||||
* <p>
|
||||
* This class represents a logical (unchunked) NDEF record. The underlying
|
||||
* representation may be chunked across several NDEF records when the payload is
|
||||
* large.
|
||||
*/
|
||||
public class NdefRecord implements Parcelable {
|
||||
/**
|
||||
* Indicates no type, id, or payload is associated with this NDEF Record.
|
||||
* <p>
|
||||
* Type, id and payload fields must all be empty to be a valid TNF_EMPTY
|
||||
* record.
|
||||
*/
|
||||
public static final short TNF_EMPTY = 0x00;
|
||||
|
||||
/**
|
||||
* Indicates the type field uses the RTD type name format.
|
||||
* <p>
|
||||
* Use this TNF with RTD types such as RTD_TEXT, RTD_URI.
|
||||
*/
|
||||
public static final short TNF_WELL_KNOWN = 0x01;
|
||||
|
||||
/**
|
||||
* Indicates the type field contains a value that follows the media-type BNF
|
||||
* construct defined by RFC 2046.
|
||||
*/
|
||||
public static final short TNF_MIME_MEDIA = 0x02;
|
||||
|
||||
/**
|
||||
* Indicates the type field contains a value that follows the absolute-URI
|
||||
* BNF construct defined by RFC 3986.
|
||||
*/
|
||||
public static final short TNF_ABSOLUTE_URI = 0x03;
|
||||
|
||||
/**
|
||||
* Indicates the type field contains a value that follows the RTD external
|
||||
* name specification.
|
||||
* <p>
|
||||
* Note this TNF should not be used with RTD_TEXT or RTD_URI constants.
|
||||
* Those are well known RTD constants, not external RTD constants.
|
||||
*/
|
||||
public static final short TNF_EXTERNAL_TYPE = 0x04;
|
||||
|
||||
/**
|
||||
* Indicates the payload type is unknown.
|
||||
* <p>
|
||||
* This is similar to the "application/octet-stream" MIME type. The payload
|
||||
* type is not explicitly encoded within the NDEF Message.
|
||||
* <p>
|
||||
* The type field must be empty to be a valid TNF_UNKNOWN record.
|
||||
*/
|
||||
public static final short TNF_UNKNOWN = 0x05;
|
||||
|
||||
/**
|
||||
* Indicates the payload is an intermediate or final chunk of a chunked
|
||||
* NDEF Record.
|
||||
* <p>
|
||||
* The payload type is specified in the first chunk, and subsequent chunks
|
||||
* must use TNF_UNCHANGED with an empty type field. TNF_UNCHANGED must not
|
||||
* be used in any other situation.
|
||||
*/
|
||||
public static final short TNF_UNCHANGED = 0x06;
|
||||
|
||||
/**
|
||||
* Reserved TNF type.
|
||||
* <p>
|
||||
* The NFC Forum NDEF Specification v1.0 suggests for NDEF parsers to treat this
|
||||
* value like TNF_UNKNOWN.
|
||||
* @hide
|
||||
*/
|
||||
public static final short TNF_RESERVED = 0x07;
|
||||
|
||||
/**
|
||||
* RTD Text type. For use with TNF_WELL_KNOWN.
|
||||
*/
|
||||
public static final byte[] RTD_TEXT = {0x54}; // "T"
|
||||
|
||||
/**
|
||||
* RTD URI type. For use with TNF_WELL_KNOWN.
|
||||
*/
|
||||
public static final byte[] RTD_URI = {0x55}; // "U"
|
||||
|
||||
/**
|
||||
* RTD Smart Poster type. For use with TNF_WELL_KNOWN.
|
||||
*/
|
||||
public static final byte[] RTD_SMART_POSTER = {0x53, 0x70}; // "Sp"
|
||||
|
||||
/**
|
||||
* RTD Alternative Carrier type. For use with TNF_WELL_KNOWN.
|
||||
*/
|
||||
public static final byte[] RTD_ALTERNATIVE_CARRIER = {0x61, 0x63}; // "ac"
|
||||
|
||||
/**
|
||||
* RTD Handover Carrier type. For use with TNF_WELL_KNOWN.
|
||||
*/
|
||||
public static final byte[] RTD_HANDOVER_CARRIER = {0x48, 0x63}; // "Hc"
|
||||
|
||||
/**
|
||||
* RTD Handover Request type. For use with TNF_WELL_KNOWN.
|
||||
*/
|
||||
public static final byte[] RTD_HANDOVER_REQUEST = {0x48, 0x72}; // "Hr"
|
||||
|
||||
/**
|
||||
* RTD Handover Select type. For use with TNF_WELL_KNOWN.
|
||||
*/
|
||||
public static final byte[] RTD_HANDOVER_SELECT = {0x48, 0x73}; // "Hs"
|
||||
|
||||
/**
|
||||
* Construct an NDEF Record.
|
||||
* <p>
|
||||
* Applications should not attempt to manually chunk NDEF Records - the
|
||||
* implementation of android.nfc will automatically chunk an NDEF Record
|
||||
* when necessary (and only present a single logical NDEF Record to the
|
||||
* application). So applications should not use TNF_UNCHANGED.
|
||||
*
|
||||
* @param tnf a 3-bit TNF constant
|
||||
* @param type byte array, containing zero to 255 bytes, must not be null
|
||||
* @param id byte array, containing zero to 255 bytes, must not be null
|
||||
* @param payload byte array, containing zero to (2 ** 32 - 1) bytes,
|
||||
* must not be null
|
||||
*/
|
||||
public NdefRecord(short tnf, byte[] type, byte[] id, byte[] payload) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* Construct an NDEF Record from raw bytes.
|
||||
* <p>
|
||||
* Validation is performed to make sure the header is valid, and that
|
||||
* the id, type and payload sizes appear to be valid.
|
||||
*
|
||||
* @throws FormatException if the data is not a valid NDEF record
|
||||
*/
|
||||
public NdefRecord(byte[] data) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the 3-bit TNF.
|
||||
* <p>
|
||||
* TNF is the top-level type.
|
||||
*/
|
||||
public short getTnf() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the variable length Type field.
|
||||
* <p>
|
||||
* This should be used in conjunction with the TNF field to determine the
|
||||
* payload format.
|
||||
*/
|
||||
public byte[] getType() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the variable length ID.
|
||||
*/
|
||||
public byte[] getId() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the variable length payload.
|
||||
*/
|
||||
public byte[] getPayload() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* Return this NDEF Record as a byte array.
|
||||
* @hide
|
||||
*/
|
||||
public byte[] toByteArray() {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int describeContents() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeToParcel(Parcel dest, int flags) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
public static final Parcelable.Creator<NdefRecord> CREATOR =
|
||||
new Parcelable.Creator<NdefRecord>() {
|
||||
public NdefRecord createFromParcel(Parcel in) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
public NdefRecord[] newArray(int size) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user