本文整理汇总了Java中android.nfc.tech.Ndef.get方法的典型用法代码示例。如果您正苦于以下问题:Java Ndef.get方法的具体用法?Java Ndef.get怎么用?Java Ndef.get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类android.nfc.tech.Ndef
的用法示例。
在下文中一共展示了Ndef.get方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: writeTag
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
/**
* 写入标签
*
* @param message
* @param tag
* @return
*/
public static boolean writeTag(NdefMessage message, Tag tag) {
int size = message.toByteArray().length;
try {
Ndef ndef = Ndef.get(tag);
if (ndef != null) {
ndef.connect();
if (!ndef.isWritable()) {
return false;
}
if (ndef.getMaxSize() < size) {
return false;
}
ndef.writeNdefMessage(message);
return true;
}
} catch (Exception e) {
}
return false;
}
示例2: getNdefUsedSize
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
private DataReply getNdefUsedSize() {
DataReply dataReply = new DataReply();
int size = 0;
if (currentTag != null) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD_MR1) {
Ndef ndef = Ndef.get(currentTag);
if (ndef != null && ndef.getCachedNdefMessage() != null)
size = ndef.getCachedNdefMessage().toByteArray().length;
else {
dataReply.setError(TAG_READING_ERROR);
return dataReply;
}
try {
if (ndef != null) ndef.close();
} catch (IOException e) {
}
}
}
dataReply.setIntegerData(size);
return dataReply;
}
示例3: getNdefMaxSize
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
private DataReply getNdefMaxSize() {
DataReply dataReply = new DataReply();
int maxSize = 0;
if (currentTag != null) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD_MR1) {
Ndef ndef = Ndef.get(currentTag);
if (ndef != null) {
maxSize = ndef.getMaxSize();
if (maxSize <= 0){
dataReply.setError(TAG_READING_ERROR);
return dataReply;
}
}else {
dataReply.setError(TAG_READING_ERROR);
return dataReply;
}
try {
if (ndef != null) ndef.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
dataReply.setIntegerData(maxSize);
return dataReply;
}
示例4: writeTAG
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
protected void writeTAG(Tag tag) throws IOException, FormatException {
Ndef ndefTag = Ndef.get(tag);
byte[] stringBytes = passphrase.getBytes();
NdefRecord data = NdefRecord.createMime(CONST.NFC_MIME_LOGIN, stringBytes);
NdefMessage message = new NdefMessage(data);
if (ndefTag != null) { //write to formatted tag
ndefTag.connect();
ndefTag.writeNdefMessage(message);
} else { //format the tag
NdefFormatable format = NdefFormatable.get(tag);
if(format != null) {
format.connect();
format.format(message);
}
}
}
示例5: nfcRead
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
public String nfcRead(Tag t)
{
Tag tag = t;
Ndef ndef = Ndef.get(tag);
if (ndef == null) {
return null;
}
NdefMessage ndefMessage = ndef.getCachedNdefMessage();
NdefRecord[] records = ndefMessage.getRecords();
for (NdefRecord ndefRecord : records)
{
if (ndefRecord.getTnf() == NdefRecord.TNF_WELL_KNOWN && Arrays.equals(ndefRecord.getType(), NdefRecord.RTD_TEXT))
{
try {return readText(ndefRecord);} catch (UnsupportedEncodingException e) {}
}
}
return null;
}
示例6: doInBackground
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
@Override
protected NFCTag doInBackground(Intent... params) {
Intent intent = params[0];
Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
Ndef ndef = Ndef.get(tag);
if (ndef == null) {
return null;
}
NdefMessage ndefMessage = ndef.getCachedNdefMessage();
if(ndefMessage != null) {
NdefRecord[] records = ndefMessage.getRecords();
for (NdefRecord ndefRecord : records) {
try {
return new NFCTag(ndefRecord).decode();
} catch (UnsupportedEncodingException e) {
Log.e("NFC", "Unsupported Encoding", e);
}
}
}
return null;
}
示例7: onNewIntent
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
@Override
protected void onNewIntent(Intent intent) {
Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
Log.d(TAG, "onNewIntent: "+intent.getAction());
if(tag != null) {
Toast.makeText(this, getString(R.string.message_tag_detected), Toast.LENGTH_SHORT).show();
Ndef ndef = Ndef.get(tag);
if (isDialogDisplayed) {
if (isWrite) {
String messageToWrite = mEtMessage.getText().toString();
mNfcWriteFragment = (NFCWriteFragment) getFragmentManager().findFragmentByTag(NFCWriteFragment.TAG);
mNfcWriteFragment.onNfcDetected(ndef,messageToWrite);
} else {
mNfcReadFragment = (NFCReadFragment)getFragmentManager().findFragmentByTag(NFCReadFragment.TAG);
mNfcReadFragment.onNfcDetected(ndef);
}
}
}
}
示例8: writeTag
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
public void writeTag(Tag tag, NdefMessage message)
{
if (tag != null) {
try {
Ndef ndefTag = Ndef.get(tag);
if (ndefTag == null) {
// Let's try to format the Tag in NDEF
NdefFormatable nForm = NdefFormatable.get(tag);
if (nForm != null) {
nForm.connect();
nForm.format(message);
nForm.close();
}
}
else {
ndefTag.connect();
ndefTag.writeNdefMessage(message);
ndefTag.close();
}
}
catch(Exception e) {
e.printStackTrace();
}
}
}
示例9: getTagText
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
public String getTagText() throws Exception
{
if (tag == null)
{
throw new Exception("Please call handle new read as tag is null");
}
Ndef ndef = Ndef.get(tag);
NdefMessage ndefMessage = ndef.getCachedNdefMessage();
NdefRecord[] records = ndefMessage.getRecords();
for (NdefRecord ndefRecord : records)
{
if (ndefRecord.getTnf() == NdefRecord.TNF_WELL_KNOWN && Arrays.equals(ndefRecord.getType(), NdefRecord.RTD_TEXT))
{
try
{
return readText(ndefRecord);
}
catch (UnsupportedEncodingException e)
{
Toast.makeText(activity, "Unsupported encoding", Toast.LENGTH_SHORT).show();
}
}
}
return null;
}
示例10: writeTag
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
/**
* Writes an NdefMessage to a NFC tag
*/
public static void writeTag(NdefMessage message, Tag tag) throws Exception {
int size = message.toByteArray().length;
Ndef ndef = Ndef.get(tag);
if (ndef != null) {
ndef.connect();
if (!ndef.isWritable()) {
throw new NfcTagNotWritableException();
}
if (ndef.getMaxSize() < size) {
throw new NfcTagInsufficientMemoryException(ndef.getMaxSize(), size);
}
ndef.writeNdefMessage(message);
} else {
NdefFormatable format = NdefFormatable.get(tag);
if (format != null) {
format.connect();
format.format(message);
} else {
throw new IllegalArgumentException("Ndef format is NULL");
}
}
}
示例11: doInBackground
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
@Override
protected String doInBackground(Tag... params) {
Tag tag = params[0];
Ndef ndef = Ndef.get(tag);
if (ndef == null) {
// NDEF is not supported by this Tag.
return null;
}
NdefMessage ndefMessage = ndef.getCachedNdefMessage();
NdefRecord[] records = ndefMessage.getRecords();
for (NdefRecord ndefRecord : records) {
if (ndefRecord.getTnf() == NdefRecord.TNF_WELL_KNOWN && Arrays.equals(ndefRecord.getType(), NdefRecord.RTD_TEXT)) {
try {
return readText(ndefRecord);
} catch (UnsupportedEncodingException e) {
Log.e(TAG, "Unsupported Encoding", e);
}
}
}
return null;
}
示例12: doInBackground
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
@Override
protected ArrayList<String> doInBackground(Tag... params) {
Tag tag = params[0];
Ndef ndef = Ndef.get(tag);
if (ndef == null) {
// NDEF is not supported by this Tag.
return null;
}
ArrayList<String> results = new ArrayList<>();
NdefMessage ndefMessage = ndef.getCachedNdefMessage();
NdefRecord[] records = ndefMessage.getRecords();
for (NdefRecord ndefRecord : records) {
if (ndefRecord.getTnf() == NdefRecord.TNF_WELL_KNOWN && Arrays.equals(ndefRecord.getType(), NdefRecord.RTD_TEXT)) {
try {
results.add(readText(ndefRecord));
} catch (UnsupportedEncodingException e) {
Log.e(TAG, "Unsupported Encoding", e);
}
}
}
return results;
}
示例13: writableTag
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
public static boolean writableTag(Tag tag) {
try {
Ndef ndef = Ndef.get(tag);
if (ndef != null) {
ndef.connect();
if (!ndef.isWritable()) {
ndef.close();
return false;
}
ndef.close();
return true;
}
} catch (Exception e) {
}
return false;
}
示例14: readTag
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
private void readTag(Tag t) {
byte[] id = t.getId();
// get NDEF tag details
Ndef ndefTag = Ndef.get(t);
// get NDEF message details
NdefMessage ndefMesg = ndefTag.getCachedNdefMessage();
if (ndefMesg == null) {
return;
}
NdefRecord[] ndefRecords = ndefMesg.getRecords();
if (ndefRecords == null) {
return;
}
for (NdefRecord record : ndefRecords) {
short tnf = record.getTnf();
String type = new String(record.getType());
if (tnf == NdefRecord.TNF_WELL_KNOWN && Arrays.equals(type.getBytes(), NdefRecord.RTD_URI)) {
String url = new String(record.getPayload());
recordBadge(url);
}
}
}
示例15: readTagFromIntent
import android.nfc.tech.Ndef; //导入方法依赖的package包/类
private void readTagFromIntent(Intent intent) {
if (intent != null){
String action = intent.getAction();
if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(action)) {
tagReaded = true;
// get NDEF tag details
Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
if (tag != null) {
Ndef ndefTag = Ndef.get(tag);
//int tagSize = ndefTag.getMaxSize(); // tag size
tagIsWritable = ndefTag.isWritable(); // is tag writable?
//String tagType = ndefTag.getType(); // tag type
Parcelable[] rawMsgs = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES);
if (rawMsgs != null) {
NdefRecord[] records = ((NdefMessage) rawMsgs[0]).getRecords();
String text = ndefRecordToString(records[0]);
onTagReadListener.onTagRead(text);
}
}
}
}
}