射频IC卡读卡器,RFID读写器,读写模块产品研发定制和生产。我们的目标:一流的产品,五星级服务!对客户的需求做出快速响应。
友我科技推出IC卡读卡器的Android开发包
友我科技推出RFID读写器云服务,支持更多浏览器的web应用
友我科技发布M1卡通用版的发卡充值软件
高频IC卡模块选型指南
125K 短距离
13.56M 中距离
915M 长距离
2.4G 无线数传
新闻搜索
 
最新新闻
1  安卓(Android
2  跨web浏览器的IC
3  友我科技推出IC卡读
4  IC卡读卡器web开
5  友我科技推出RFID
6  IC卡读卡器仿键盘输
7  友我科技发布M1卡通
8  Modbus读写器Y
9  在WEB浏览器使用I
10  ActiveX技术在
热门新闻 点击
 友我科技推出新一代农 180664
 友我科技发布PC/S 176955
 友我科技RFID读写 176174
 友我科技RFID产品 113437
 射频IC卡和IC卡读 76310
 射频卡读写模块选购指 59314
 友我科技PCSC双界 50064
 ISO14443 I 24194
 射频卡读写器发卡器介 21949
 接触式IC卡接口原理 17109
产品推荐
暂 无 最 新 图 文
     新 闻 中 心
安卓(Android)下如何开发USB NFC读写器app
双击自动滚屏 发布者:YOWO 发布时间: 阅读:2011

对安卓工程师来说,在安卓下使用USB设备需要了解很多硬件的内容,这可能会导致工程周期的延长或者app的不稳定。为了将这种风险降到最低,友我科技发布了NFC读写器在安卓下的sdk,使用NFC读写器的类接口,安卓工程师就可以直接调用NFC读写器了,简单可靠。

NFC读写器的安卓库文件为:yoworfidreader.jar

在ADT工程中导入yoworfidreader.jar库文件,即可在工程中引用NFC读写器的类文件

 

在代码中调用:


public usbreader rfidreader;

rfidreader = new usbreader();

这样就创建了NFC读写器的类的实体,下面只要使用rfidreader的各种方法就可以了,以下为读写M1卡的例子代码:


protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_m1);

rbKeyA=(RadioButton) findViewById(R.id.rbkeya);

txtCardNo = (TextView) findViewById(R.id.txtcardno);

edtKey = (EditText) findViewById(R.id.edtkey);

edtKey.setText(""FFFFFFFFFFFF"");

edtBlockID = (EditText) findViewById(R.id.edtblock);

edtBlockID.setText(""1"");

edtData = (EditText) findViewById(R.id.edtdata);

edtData.setText(""11111111111111112222222222222222"");

Button button = (Button) findViewById(R.id.btnreadCard);

button.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {

            txtCardNo.setText("""");

            edtData.setText("""");

             

            int BlockID = MainActivity.ValidInt( edtBlockID.getText().toString() , 63);

            if(BlockID<0)

            {

            MainActivity.dialog(""块号必须是0-63"",M1.this);

            return;

            }

             

            if(!MainActivity.ValidHexString(edtKey.getText().toString(), 6))

            {

            MainActivity.dialog(""密钥必须是6字节16进制"",M1.this);

            return;

            }

            if( MainActivity.rfidreader.ISO14443A.YW_RequestCard(MainActivity.rfidreader.ISO14443A.REQUESTMODE_ALL)<0)return;

             

            byte[] CardNo=MainActivity.rfidreader.ISO14443A.YW_AntiCollideAndSelect(MainActivity.rfidreader.ISO14443A.MULTIMODE_ONE);

             

            if(CardNo==null)return;

            txtCardNo.setText(""卡号:"" + MainActivity.bytesToHexString(CardNo));

             

            byte KeyMode=MainActivity.rfidreader.ISO14443A.Key_B;

            if(rbKeyA.isChecked())KeyMode=MainActivity.rfidreader.ISO14443A.Key_A;


            if(MainActivity.rfidreader.ISO14443A.YW_KeyAuthorization(KeyMode, BlockID, MainActivity.HexStringtoBytes( edtKey.getText().toString()))<0)

            {

            MainActivity.dialog(""密钥认证错误"",M1.this);

            return;              

            }

             

            byte[] Data = MainActivity.rfidreader.ISO14443A.YW_ReadaBlock(BlockID);

            if(Data==null)

            {

            MainActivity.dialog(""读取块失败"",M1.this);

            return;

            }

             

            edtData.setText(MainActivity.bytesToHexString(Data));

            MainActivity.rfidreader.ReaderHardware.YW_Buzzer(5, 5, 1); 

            }

});

Button button2 = (Button) findViewById(R.id.btnwritedata);

button2.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {

            txtCardNo.setText("""");

             

             

            int BlockID = MainActivity.ValidInt( edtBlockID.getText().toString() , 63);

            if(BlockID<0)

            {

            MainActivity.dialog(""块号必须是0-63"",M1.this);

            return;

            }

             

            if(!MainActivity.ValidHexString(edtKey.getText().toString(), 6))

            {

            MainActivity.dialog(""密钥必须是6字节16进制"",M1.this);

            return;

            }

             

            if(!MainActivity.ValidHexString(edtData.getText().toString(), 16))

            {

            MainActivity.dialog(""数据必须是16字节16进制"",M1.this);

            return;

            }              

             

            if( MainActivity.rfidreader.ISO14443A.YW_RequestCard(MainActivity.rfidreader.ISO14443A.REQUESTMODE_ALL)<0)return;

             

            byte[] CardNo=MainActivity.rfidreader.ISO14443A.YW_AntiCollideAndSelect(MainActivity.rfidreader.ISO14443A.MULTIMODE_ONE);

             

            if(CardNo==null)return;

            txtCardNo.setText(""卡号:"" + MainActivity.bytesToHexString(CardNo));

             

            byte KeyMode=MainActivity.rfidreader.ISO14443A.Key_B;

            if(rbKeyA.isChecked())KeyMode=MainActivity.rfidreader.ISO14443A.Key_A;


            if(MainActivity.rfidreader.ISO14443A.YW_KeyAuthorization(KeyMode, BlockID, MainActivity.HexStringtoBytes( edtKey.getText().toString()))<0)

            {

            MainActivity.dialog(""密钥认证错误"",M1.this);

            return;              

            }

             

            byte[] Data = MainActivity.HexStringtoBytes(edtData.getText().toString());

             

            if(MainActivity.rfidreader.ISO14443A.YW_WriteaBlock(BlockID, Data)>0)

            {

            MainActivity.dialog(""数据写入成功"",M1.this);

            MainActivity.rfidreader.ReaderHardware.YW_Buzzer(5, 5, 1); 

            }

            else

            MainActivity.dialog(""数据写入失败"",M1.this);

            }

});

}

}


支持安卓的NFC读写器有YW-605系列和YW-607等

安卓NFC读写器的在线开发指南:NFC读写器安卓开发指南



相关产品

最新RFID读写器产品手册
RFID读写器SDK开发包
USB射频卡RFID读写器YW-605-USB
串口射频卡RFID读写器YW-605-RS232
NFC读写器YW-607

打印本页 || 关闭窗口
企业简介||付款方式||网站地图||友情连接||联系我们

RFID读写器,IC卡读卡器, 智能卡读卡器,RFID读卡器, 电子标签,CPU卡读写器,读卡模块
北京友我科技有限公司 版权所有 (C)2008-2016
客户服务中心信箱:coodor#126.com(将#改为@).客户服务MSN: coodor#126.com(将#改为@)
热线直拨: 010-59395668 18910685939 QQ:2718497571, 896163157,1403463073
京ICP备14016005号
友我科技


1
RFID读写器产品手册下载
2
读写器开发SDK下载
3
点击联系友我科技
4
点击联系友我科技