I have created an application where i add NFC support in my app.As given in android doc i go through an example where i can send text on tap of two device that support NFC in android phone.Now my question is that instead of sending text can i send image.If so how that can be done.If anyone know please suggest me, if possible with an example.The code that i used in sending text is.
Code:
public class NFCTestApp extends Activity
{
private NfcAdapter mAdapter;
private TextView mText;
private NdefMessage mMessage;
public static NdefRecord newTextRecord(String text, Locale locale, boolean enco deInUtf8)
{
byte[] langBytes = locale.getLanguage().getBytes(Charset.forName("US-ASCII"));
Charset utfEncoding = encodeInUtf8 ? Charset.forName("UTF-8") : Charset.forName("UTF-16");
byte[] textBytes = text.getBytes(utfEncoding);
int utfBit = encodeInUtf8 ? 0 : (1 << 7);
char status = (char) (utfBit + langBytes.length);
byte[] data = new byte[1 + langBytes.length + textBytes.length];
data[0] = (byte) status;
System.arraycopy(langBytes, 0, data, 1, langBytes.length);
System.arraycopy(textBytes, 0, data, 1 + langBytes.length, textBytes.length);
return new NdefRecord(NdefRecord.TNF_WELL_KNOWN, NdefRecord.RTD_TEXT, new byte[0], data);
}
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
mAdapter = NfcAdapter.getDefaultAdapter(this);
setContentView(R.layout.main);
mText = (TextView) findViewById(R.id.text);
if (mAdapter != null)
{
mText.setText("Tap another Android phone with NFC to push 'NDEF Push Sample'");
}
else
{
mText.setText("This phone is not NFC enabled.");
}
// Create an NDEF message with some sample text
mMessage = new NdefMessage(
new NdefRecord[] { newTextRecord("NDEF Push Sample", Locale.ENGLISH, true)});
}
@Override
public void onResume()
{
super.onResume();
if (mAdapter != null) mAdapter.enableForegroundNdefPush(this, mMessage);
}
@Override
public void onPause()
{
super.onPause();
if (mAdapter != null) mAdapter.disableForegroundNdefPush(this);
}
}