`

NFC Demo MockNdefMessages

阅读更多
没有接触过NFC的知识,一下子看这个Demo肯定挺吃力的,最近我就到了NFC forum里面下载了NFC Text tag, URI tag, Smart Poster, NDEF这四份文档,一一区把其读懂。我把我读懂的结果和大家分享一下,对于NFC的message,以后有空我会把这四份英文的文档翻译成中文。^_^

/*
 * Copyright (C) 2010 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.example.android.nfc.simulator;

/**
 * This class provides a list of fake NFC Ndef format Tags.
 */
public class MockNdefMessages {

	/**
	 * A Smart Poster containing a URL and no text.
	 */
	public static final byte[] SMART_POSTER_URL_NO_TEXT = new byte[] {
		    //Message Header=11010 001(MB ME CF SR IL INF(001))
			(byte) 0xd1, //MB=1 ME=1 CF=0 SR=1 IL=0 INF=001
			
			(byte) 0x02,//Type length=2
			(byte) 0x0f, // Payload length=15				
			//Type=SP-->This tag type is Smart Poster
			(byte) 0x53,//S
			(byte) 0x70,//P	
			
			//Payload 
			(byte) 0xd1,	//11010 001(MB ME CF SR IL INF(001))	
			(byte) 0x01, //Type length=1
			(byte) 0x0b, //Payload length=11			
			(byte) 0x55, //	type=U-->record type is URI
			//subPayload
			(byte) 0x01,//URI Identifier code=1-->http:www.
			//google.com
			(byte) 0x67,(byte) 0x6f,(byte) 0x6f, (byte) 0x67, (byte) 0x6c, (byte) 0x65, (byte) 0x2e,
			(byte) 0x63,(byte) 0x6f, (byte) 0x6d };
			
			

	/**
	 * A plain text tag in english.
	 */
	public static final byte[] ENGLISH_PLAIN_TEXT = new byte[] {
			(byte) 0xd1, //11010 001(MB ME CF SR IL INF(001))
			(byte) 0x01,//Type length=11
			(byte) 0x1c,//Payload length=28
			(byte) 0x54,// Type=T-->record type is TEXT
			(byte) 0x02,//Status byte 00000010 -->UTF-8, Language codes length=2
			
			//Language Codes="en"
			(byte) 0x65,	// e	
			(byte) 0x6e,	// n
			
			// Some random english text
			(byte) 0x53, (byte) 0x6f, (byte) 0x6d, (byte) 0x65, (byte) 0x20,
			(byte) 0x72, (byte) 0x61, (byte) 0x6e, (byte) 0x64, (byte) 0x6f,
			(byte) 0x6d, (byte) 0x20, (byte) 0x65, (byte) 0x6e, (byte) 0x67,
			(byte) 0x6c, (byte) 0x69, (byte) 0x73, (byte) 0x68, (byte) 0x20,
			(byte) 0x74, (byte) 0x65, (byte) 0x78, (byte) 0x74, (byte) 0x2e };

	/**
	 * Smart Poster containing a URL and Text.
	 */
	public static final byte[] SMART_POSTER_URL_AND_TEXT = new byte[] {
			(byte) 0xd1,  //11010 001(MB ME CF SR IL INF(001))
			(byte) 0x02,//Type length=2
			(byte) 0x1c,//Payload length=28
			
			//Type=SP
			(byte) 0x53, //S
			(byte) 0x70,	//p
			
			//------Text record----------------------------------------//
			(byte) 0x91, //10010001(MB ME CF SR IL INF(001)) 
			(byte) 0x01, //Type length=1
			(byte) 0x09,//Payload length=9
	
			(byte) 0x54, 		//Type=T-->TEXT

			(byte) 0x02,//Status byte 00000010 -->UTF-8, Language codes length=2
			
			//Language Codes="en"
			(byte) 0x65,	//n
			(byte) 0x6e,	//e
			
			// Google
			(byte) 0x47, (byte) 0x6f, (byte) 0x6f, (byte) 0x67, (byte) 0x6c,(byte) 0x65,
			//------Text record----------------------------------------//
			
			//---URI record------------------------------------------//
			(byte) 0x51, //01010001(MB ME CF SR IL INF(001)) 
			
			(byte) 0x01, //Type length=1
			(byte) 0x0b,//Payload length=11
			(byte) 0x55,			// U
			(byte) 0x01,	// http://www.
			// google.com
			(byte) 0x67, (byte) 0x6f, (byte) 0x6f, (byte) 0x67, (byte) 0x6c,
			(byte) 0x65, (byte) 0x2e, (byte) 0x63, (byte) 0x6f, (byte) 0x6d };
	
	
	

	/**
	 * All the mock Ndef tags.
	 */
	public static final byte[][] ALL_MOCK_MESSAGES = new byte[][] {
			SMART_POSTER_URL_NO_TEXT, ENGLISH_PLAIN_TEXT,
			SMART_POSTER_URL_AND_TEXT };
}
分享到:
评论
2 楼 chenwj312 2013-08-28  
请问,nfc名片如何应用vCard格式实现名片的读写
1 楼 M985300651 2012-08-30  
最近也在研究NFC,看完您的文章
實在感謝您的分享~~

相关推荐

    android NFC demo

    "android NFC demo"是一个示例项目,演示了如何在Android应用中利用NFC技术自动打开网页。 首先,我们需要理解NFC的基本工作原理。NFC采用电磁场进行通信,最大通信距离约为10厘米。当两个设备都支持NFC并彼此靠近...

    Android Nfc demo

    Android Nfc demo是一个示例项目,用于演示如何在Android应用程序中集成和利用NFC功能。本篇文章将深入探讨NFC的基本概念、在Android中的应用以及如何通过AndroidNFC这个压缩包中的代码实现相关功能。 1. **NFC基础...

    android_nfc_demo.zip_AndroidBeamDemo_Androidnfc巡考_NFC P2P_NFC an

    本资料包"android_nfc_demo.zip"提供了Android Beam Demo,是Android平台上实现NFC P2P功能的示例代码,非常适合开发者进行学习和实践。以下将详细解析Android NFC P2P技术及其应用。 一、Android Beam简介 Android...

    android nfc开发 demo

    在这个“android nfc开发 demo”中,我们将会探讨如何在Android平台上利用NFC功能进行应用开发。 一、NFC基础知识 1. NFC工作原理:NFC基于射频识别(RFID)技术,通过短距离的高频无线通信,实现设备间的交互。...

    NFC Demo 工程源文件

    在本“NFC Demo 工程源文件”中,你将找到一个基于MyEclipse开发的NFC应用示例。这个项目可以帮助开发者了解如何在Android平台上集成和使用NFC功能。 在MyEclipse中,NFC Demo工程包含了一系列的源代码文件,这些...

    android NFC DEMO

    本DEMO是针对Android NFC功能的一个示例应用,它演示了如何读取NFC标签中的数据。在进行NFC应用开发时,了解相关API和流程至关重要。 首先,我们要明确Android系统的NFC框架,它由以下几部分组成: 1. **NFC服务...

    Android NFC Demo1

    在这个“Android NFC Demo1”项目中,我们可以深入探讨如何在Android平台上开发NFC相关的应用。 首先,NFC技术基于射频识别(RFID)技术,工作在13.56MHz频率,传输距离一般在几厘米内。它主要用于移动支付、数据...

    MSP430F5529 NFC Demo

    **MSP430F5529 NFC Demo** 这个项目是关于使用MSP430F5529微控制器进行NFC(近场通信)功能的演示。MSP430F5529是由德州仪器(TI)推出的高效能、低功耗微控制器,适用于各种嵌入式应用,尤其是需要无线通信功能的...

    android nfc 读写demo

    1.支持android设备读取nfc贴纸数据 2.支持向nfc卡中写入相关的数据 3.操作非常简单,只需要在在Activity中的onResume、onPause、onDestroy、onNewIntent方法中调用nfc工具类的相关方法就ok了,完整的步骤请查看demo

    nfc读写demo

    "nfc读写demo"是一个基于Android的示例应用,它展示了如何实现NDEF(NFC Data Exchange Format)和Ultralight这两种格式的NFC标签读取功能。 一、NFC基础 1. **NFC技术**:NFC是一种短距离无线通信技术,工作在...

    实现NFC功能demo

    本文将详细探讨如何实现NFC功能的Demo,特别是针对"扫一扫"和RFID读取的应用。 首先,我们需要了解NFC的基本原理。NFC基于射频识别(RFID)技术,工作频率通常在13.56MHz,有效范围在几厘米内。它可以通过两种模式...

    nfc.demo.google

    《NFC技术详解:以“nfc.demo.google”为例》 NFC,全称为Near Field Communication,即近场通信,是一种短距离的高频无线通信技术,允许电子设备之间进行非接触式点对点数据传输。在日常生活中,NFC技术广泛应用在...

    android NFC 公交卡信息读取demo

    本教程将基于"android NFC 公交卡信息读取demo"来深入探讨如何利用Android NFC功能读取如北京公交卡和深圳通这类公共交通卡的信息。 一、NFC基础 1. **NFC工作原理**:NFC基于射频识别(RFID)技术,通过电磁场...

    NFC Ms523 Demo SDK Hardware

    MS523完美替换RC523 高度集成的解调和解码模拟电路  采用少量外部器件,即可将输出驱动级接至天线  支持 ISO/IEC 14443 A 和 14443 B106kBd,212kBd,424kBd,848kBd 传输速率的通信  读写距离可达 50mm,这...

    Android NFC 读卡demo

    这个"Android NFC 读卡demo"是一个示例应用程序,它演示了如何使用Android系统提供的API来读取NFC卡片上的信息。在这个项目中,开发者可以学习到如何识别NFC卡片的类型、获取卡片的扇区数量以及读取每个扇区的数据。...

    安卓开发,NFC读取NFC标签ID(二)的demo

    本示例“安卓开发,NFC读取NFC标签ID(二)的demo”将重点介绍如何使用Android的NFC阅读器模式API来读取NFC标签的ID,并且控制设备在检测到NFC标签时的反馈,如声音和震动。 首先,我们需要了解NFC的基本概念。NFC是...

    ST NFC DEMO 原理图

    Near-field communication, NFC, is a technology used to provide short-range wireless connectivity to carry two-way interactions between electronic devices. NFC is promoted and maintained by the NFC ...

    NFC DEMO.zip

    《NFC技术详解与应用实践》 NFC(Near Field Communication),即近场通信,是一种短距离无线通信技术,主要用于设备间的接触或接近交互。在联芯物联PDA的场景下,NFC功能被充分利用,实现了对13.56MHz频段卡片的...

    NFC芯片FM17550开发 demo文件

    NFC(Near Field Communication)芯片FM17550是一种广泛应用在近场通信领域的集成电路,主要负责实现设备间的短距离无线通信。这个开发demo文件集合提供了全面的信息,帮助开发者理解和应用该芯片。以下是对这些资源...

Global site tag (gtag.js) - Google Analytics