@Override public NdefMessage createNdefMessage(NfcEvent event) { return(new NdefMessage( new NdefRecord[] { buildNdefRecord(), NdefRecord.createApplicationRecord("com.commonsware.android.jimmyb") })); }
@Override public NdefMessage createNdefMessage(NfcEvent arg0) { NdefRecord uriRecord= new NdefRecord(NdefRecord.TNF_MIME_MEDIA, MIME_TYPE.getBytes(Charset.forName("US-ASCII")), new byte[0], beamFragment.getUrl() .getBytes(Charset.forName("US-ASCII"))); NdefMessage msg= new NdefMessage( new NdefRecord[] { uriRecord, NdefRecord.createApplicationRecord("com.commonsware.android.webbeam") }); return(msg); } }
void writeToTag(Intent i) { Tag tag=i.getParcelableExtra(NfcAdapter.EXTRA_TAG); NdefMessage msg= new NdefMessage(new NdefRecord[] { buildNdefRecord() }); new WriteTagTask(this, msg, tag).execute(); }
@Override protected void onNewIntent(Intent intent) { if (inWriteMode && NfcAdapter.ACTION_TAG_DISCOVERED.equals(intent.getAction())) { Tag tag=intent.getParcelableExtra(NfcAdapter.EXTRA_TAG); byte[] url=buildUrlBytes(getIntent().getStringExtra(Intent.EXTRA_TEXT)); NdefRecord record=new NdefRecord(NdefRecord.TNF_WELL_KNOWN, NdefRecord.RTD_URI, new byte[] {}, url); NdefMessage msg=new NdefMessage(new NdefRecord[] {record}); new WriteTask(this, msg, tag).execute(); } }
@Test public void setNdefPushMessage_setsNonNullMessage() throws Exception { final Activity activity = Robolectric.setupActivity(Activity.class); final NfcAdapter adapter = NfcAdapter.getDefaultAdapter(activity); final NdefMessage message = new NdefMessage(new NdefRecord[] {new NdefRecord(NdefRecord.TNF_EMPTY, null, null, null)}); adapter.setNdefPushMessage(message, activity); assertThat(shadowOf(adapter).getNdefPushMessage()).isSameAs(message); }
Ndef ndefTag = Ndef.get(tag); ndefTag.writeNdefMessage(new NdefMessage(new NdefRecord(NdefRecord.TNF_EMPTY, null, null, null)));
/** * Parse NDEF message bytes into a high-level {@link Message} representation. * * @param payload record to parse * @return corresponding {@link Message} consisting of one or more {@link Record}s. * @throws FormatException if known record type cannot be parsed */ public static Message parseNdefMessage(byte[] payload) throws FormatException { return new Message(new NdefMessage(payload)); }
Ndef ndefTag = Ndef.get(tag); ndefTag.writeNdefMessage(new NdefMessage(new NdefRecord(NdefRecord.TNF_EMPTY, null, null, null)));
NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(this); if (nfcAdapter != null) { byte[] text = "Hello World!".getBytes("UTF-8"); byte[] recordPayload = new byte[3 + text.length]; recordPayload[0] = (byte)0x02; //UTF-8, 2-byte language code recordPayload[1] = (byte)0x65; //'e' recordPayload[2] = (byte)0x6E; //'n' System.arraycopy(text, 0, recordPayload, 3, text.length); NdefMessage ndefMsg = new NdefMessage( new NdefRecord(NdefRecord.TNF_WELL_KNOWN, NdefRecord.RTD_TEXT, null, recordPayload) ); nfcAdapter.setNdefPushMessage(ndefMsg, this); }
/** * Parse NDEF message bytes into a high-level {@link Message} representation. * * @param payload record to parse * @param offset start offset * @param length number of bytes * @return corresponding {@link Message} consisting of one or more {@link Record}s. * @throws FormatException if known record type cannot be parsed */ public static Message parseNdefMessage(byte[] payload, int offset, int length) throws FormatException { byte[] messagePayload = new byte[length]; System.arraycopy(payload, offset, messagePayload, 0, length); return new Message(new NdefMessage(messagePayload)); }
public static NdefMessage fromMime(String mimeType, byte[] data) { try { NdefRecord record = new NdefRecord(NdefRecord.TNF_MIME_MEDIA, mimeType.getBytes(), new byte[0], data); NdefRecord[] records = new NdefRecord[] { record }; return new NdefMessage(records); } catch (NoClassDefFoundError e) { return null; } }
@Override public NdefMessage createNdefMessage(NfcEvent event) { NdefRecord uriRecord = NdefRecord.createUri(uri); return new NdefMessage(new NdefRecord[]{ uriRecord }); } }, ReceiveActivity.this);
@Override public NdefMessage createNdefMessage(NfcEvent event) { if(Build.VERSION.SDK_INT < 16){ return null; } NdefRecord rtdUriRecord = NdefRecord.createUri("market://details?id=info.blockchain.merchant"); NdefMessage ndefMessageout = new NdefMessage(rtdUriRecord); return ndefMessageout; }
public static final NdefMessage getEmptyNdef() { byte[] empty = new byte[] {}; NdefRecord[] records = new NdefRecord[1]; records[0] = new NdefRecord(NdefRecord.TNF_WELL_KNOWN, empty, empty, empty); NdefMessage ndef = new NdefMessage(records); return ndef; }
public void onNewIntent(Intent intent) { Tag detectedTag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG); NdefMessage ndefMessage = new NdefMessage(new NdefRecord[]{createUriRecord(mUri)}); boolean result = writeTag(ndefMessage, detectedTag); if (result) { Toast.makeText(this, "写入成功", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(this, "写入失败", Toast.LENGTH_SHORT).show(); } }
@Override public NdefRecord getNdefRecord() { NdefRecord[] ndefRecords = new NdefRecord[records.size()]; for(int i = 0; i < records.size(); i++) { ndefRecords[i] = records.get(i).getNdefRecord(); } return new NdefRecord(NdefRecord.TNF_WELL_KNOWN, type, id != null ? id : EMPTY, new NdefMessage(ndefRecords).toByteArray()); } }
/** * Convert record to bytes. * * @return record in byte form as it was an {@link NdefMessage} with a single record. */ @SuppressLint("NewApi") public byte[] toByteArray() { if (android.os.Build.VERSION.SDK_INT >= 16) { return new NdefMessage(getNdefRecord()).toByteArray(); } else { return new NdefMessage(new NdefRecord[]{getNdefRecord()}).toByteArray(); } }
@Override public NdefMessage createNdefMessage(NfcEvent nfcEvent) { NdefRecord[] recordsToAttach = getPresenter().createRecords(); //When creating an NdefMessage we need to provide an NdefRecord[] return new NdefMessage(recordsToAttach); } }
@Override public NdefMessage createNdefMessage(NfcEvent event) { final NdefRecord appData = callback.createNfcAppData(); if (appData == null) { return null; } NdefRecord[] records = new NdefRecord[]{appData, NdefRecord.createApplicationRecord(packageName)}; return new NdefMessage(records); }
/** * Convert record to its byte-based {@link NdefMessage} representation. At least one record needs to be present. * * @return record in {@link NdefMessage} form. * @throws IllegalArgumentException if zero records. */ public NdefMessage getNdefMessage() { NdefRecord[] ndefRecords = new NdefRecord[size()]; for(int i = 0; i < ndefRecords.length; i++) { ndefRecords[i] = get(i).getNdefRecord(); } return new NdefMessage(ndefRecords); }