nfc如何使用

更新时间:2023-03-14 17:19:43 阅读: 评论:0

豆腐肉片汤-七巧板的制作

nfc如何使用
2023年3月14日发(作者:检讨怎么写)

NFC读取写⼊简单使⽤

NFC读取写⼊简单使⽤

适⽤于⽆加密普通NFC卡⽚数据读取写⼊

/**

*读取NFC数据

*/

publicstaticStringreadNfcData(Intentintent){

Stringtext="";

if(_NDEF_(ion())){

Parcelable[]rawMsgs=celableArrayExtra(_NDEF_MESSAGES);

NdefMessagemsgs[]=null;

if(rawMsgs!=null){

msgs=newNdefMessage[];

for(inti=0;i<;i++){

msgs[i]=(NdefMessage)rawMsgs[i];

}

}

try{

if(msgs!=null){

NdefRecordrecord=msgs[0].getRecords()[0];

text=parTextRecord(record);

}

}catch(Exceptione){

tackTrace();

}

}

returntext;

}

/**

*写⼊NFC数据

*/

publicstaticbooleanwriteNfc(NdefMessagendefMessage,Tagtag){

try{

Ndefndef=(tag);

if(ndef!=null){

t();

booleanisWritable=able();

intmaxSize=Size();

intmsgLength=Array().length;

if(!isWritable||maxSize

returnfal;

}

defMessage(ndefMessage);

();

}el{

NdefFormatableformatable=(tag);

if(formatable!=null){

t();

(ndefMessage);

();

}

}

returntrue;

}catch(Exceptione){

tackTrace();

}

returnfal;

}

publicstaticNdefRecordcreateTextRecord(Stringtext){

byte[]langBytes=guage().getBytes(e("US-ASCII"));

byte[]langBytes=guage().getBytes(e("US-ASCII"));

ChartutfEncoding=e("UTF-8");

byte[]textBytes=es(utfEncoding);

intutfBit=0;

charstatus=(char)(utfBit+);

byte[]data=newbyte[1++];

data[0]=(byte)status;

opy(langBytes,0,data,1,);

opy(textBytes,0,data,1+,);

NdefRecordndefRecord=newNdefRecord(_WELL_KNOWN,_TEXT,newbyte[0],data);

returnndefRecord;

}

publicstaticStringparTextRecord(NdefRecordndefRecord){

//判断TNF

if(()!=_WELL_KNOWN){

returnnull;

}

//判断可变的长度的类型

if(!(e(),_TEXT)){

returnnull;

}

try{

//获得字节数组,然后进⾏分析

byte[]payload=load();

//下⾯开始NDEF⽂本数据第⼀个字节,状态字节

//判断⽂本是基于UTF-8还是UTF-16的,取第⼀个字节"位与"上16进制的80,16进制的80也就是最⾼位是1,

//其他位都是0,所以进⾏"位与"运算后就会保留最⾼位

StringtextEncoding=((payload[0]&0x80)==0)?"UTF-8":"UTF-16";

//3f最⾼两位是0,第六位是1,所以进⾏"位与"运算后获得第六位

intlanguageCodeLength=payload[0]&0x3f;

//下⾯开始NDEF⽂本数据第⼆个字节,语⾔编码

//获得语⾔编码

StringlanguageCode=newString(payload,1,languageCodeLength,"US-ASCII");

//下⾯开始NDEF⽂本数据后⾯的字节,解析出⽂本

StringtextRecord=newString(payload,languageCodeLength+1,-languageCodeLength-1,textEncoding);

returntextRecord;

}catch(Exceptione){

thrownewIllegalArgumentException();

}

}

本文发布于:2023-03-14 17:19:41,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/1678785583249916.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:nfc如何使用.doc

本文 PDF 下载地址:nfc如何使用.pdf

上一篇:国防教育课
下一篇:返回列表
标签:nfc如何使用
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图