NFC程序设计(三)自动运行程序.ppt

上传人:夺命阿水 文档编号:242071 上传时间:2023-03-16 格式:PPT 页数:27 大小:510.50KB
返回 下载 相关 举报
NFC程序设计(三)自动运行程序.ppt_第1页
第1页 / 共27页
NFC程序设计(三)自动运行程序.ppt_第2页
第2页 / 共27页
NFC程序设计(三)自动运行程序.ppt_第3页
第3页 / 共27页
NFC程序设计(三)自动运行程序.ppt_第4页
第4页 / 共27页
NFC程序设计(三)自动运行程序.ppt_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《NFC程序设计(三)自动运行程序.ppt》由会员分享,可在线阅读,更多相关《NFC程序设计(三)自动运行程序.ppt(27页珍藏版)》请在课桌文档上搜索。

1、手机短距离通信技术,第3讲 NFC程序设计(三),1、检查上次作业2、检查预习题目3、上次课程的总结4、NDEF的Uri格式结构5、android应用程序记录的创建6、NFC的前台调度系统7、应用示例8、本次课的作业9、下次课的预习内容,1、上次课的作业,编写一个电子名片标签的软件,要求能支持NDEF文本格式读写。名片能显示姓名,电话号码等信息。,1、检查上次作业2、检查预习题目3、上次课程的总结4、NDEF的Uri格式结构5、android应用程序记录的创建6、NFC的前台调度系统7、应用示例8、本次课的作业9、下次课的预习内容,第3讲 NFC程序设计(三),2、上次课预习内容,1、annd

2、roid应用程序记录(AAR)2、让手机通过标签自动运行程序3、让手机通过标签自动打开网页,1、检查上次作业2、检查预习题目3、上次课程的总结4、NDEF的Uri格式结构5、android应用程序记录的创建6、NFC的前台调度系统7、应用示例8、本次课的作业9、下次课的预习内容,第3讲 NFC程序设计(三),NDEF格式标签的读取流程,1.在onCreate()中获取NfcAdapter对象;2.在onNewIntent()中判断是否为NDEF格式标签(ACTION_NDEF_DISCOVERED),若是则获取NdefMessage信息;(需要强制转换成NdefMessage对象)Parcel

3、able rawMsgs=getIntent().getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES)3.对NdefMessage对象进行解析,获取相关的文本信息或Uri等。,NDEF格式标签的写入流程,1.在onCreate()中获取NfcAdapter对象;2.在onNewIntent()中获取Tag对象;Tag tag=intent.getParcelableExra(NfcAdapter.EXTRA_TAG);3.通过Tag创建Ndef对象;Ndef ndef=Ndef.get(tag);4.将文本等数据封装成NdefMessa

4、ge;,NDEF格式标签的写入流程,5.判断是否为NDEF格式标签,若是NDEF格式:(1)允许进行标签操作:ndef.connect();(2)调用ndef.writeNdefMessage(NdefMessage)方法写入。若非NDEF格式:(1)获得可以格式化和向标签写入数据的NdefFormatable对象;NdefFromatable format=NdefFromatable.get();(2)允许进行标签操作:format.connect();(2)调用format.format(NdefMessage)方法写入。,NdefMessage信息结构,NdefRecord中的常用方法

5、,1.可通过NdefRecord.getTnf()方法来获得TNF字段;2.通过NdefRecord.getType()方法来获得RTD字段,当TNF为TNF_WELL_KNOWN时的RTD。3.通过NdefRecord.getPayload()方法来获得实际读写的数据。4.通过NdefRecord.getId()方法来获得NFC标签的ID号。,NDEF文本格式,1、NdefMessage中的paylaod就是实际的数据,其中NDEF文本格式为:,1、检查上次作业2、检查预习题目3、上次课程的总结4、NDEF的Uri格式结构5、android应用程序记录的创建6、NFC的前台调度系统7、应用示

6、例8、本次课的作业9、下次课的预习内容,第3讲 NFC程序设计(三),4、NDEF Uri格式,1、NDEF格式中与Uri相关的类型有:TNF_ABSOLUTE_URI(直接Uri格式);TNF_WELL_KNOWN中RTD_URI(带前缀表,需要解码)。2、NdefMessage中的paylaod就是实际的数据,其中NDEF文本格式为:2、前缀需要查表解析,1、检查上次作业2、检查预习题目3、上次课程的总结4、NDEF的Uri格式结构5、android应用程序记录的创建6、NFC的前台调度系统7、应用示例8、本次课的作业9、下次课的预习内容,第3讲 NFC程序设计(三),5、android应

7、用程序记录,1、在Android4.0中引入应用程序记录(AAR),当扫描到写入AAR的NFC标签时,启动相应的应用程序。2、AAR有嵌入到NdefRecord内部的应用程序包名。Android会针对AAR来搜索整个NdefMessage,如果找到一个AAR,就会基于AAR内部的包名来启动应用程序。3、NFC标签调度系统对包含AAR标签的调度:1.若跟Intent匹配的Activity也跟AAR匹配,则启动该Activity;2.若跟Intent匹配,而跟AAR不匹配,则启动AAR指定的应用程序;3.如果没有跟AAR对应的应用程序,则启动各种市场来下载对应基于AAR的应用程序。,android

8、应用程序记录创建方法,1、调用NdefRecord类的creatApplicationRecord()方法来创建应用程序记录。2、将所创建的AAR嵌入到NdefMessage中。NdefMessage msg=new NdefMessage(new Ndefrecord,NdefRecord.creatApplicationRecord(“com.example.android.beam”)3、除非AAR是你NdefMessage中的唯一记录,否则不要将AAR嵌入到NdefMessage的第一条记录。,Activity中的onNewIntent方法,如果IntentActivity处于任务栈的

9、顶端,也就是说之前打开过的Activity,现在处于onPause、onStop状态的话,其他应用再发送Intent的话,执行顺序为:onNewIntent,onRestart,onStart,onResume。launchMode为singleTask的时候,通过Intent启到一个Activity,如果系统已经存在一个实例,系统就会将请求发送到这个实例上,但这个时候,系统就不会再调用通常情况下我们处理请求数据的onCreate方法,而是调用onNewIntent方法。系统可能会随时杀掉后台运行的Activity,如果这一切发生,那么系统就会调用onCreate方法,而不调用onNewInt

10、ent方法,一个好的解决方法就是在onCreate和onNewIntent方法中调用同一个处理数据的方法。onNewIntent()中的setIntent()和getIntent(),如果没有调用setIntent(intent),则getIntent()获取的数据将不是你所期望的。所以最好是调用setIntent(intent),这样在使用getIntent()的时候就不会有问题了。,1、检查上次作业2、检查预习题目3、上次课程的总结4、NDEF的Uri格式结构5、android应用程序记录的创建6、NFC的前台调度系统7、应用示例8、本次课的作业9、下次课的预习内容,第3讲 NFC程序设计

11、(三),6、NFC的前台调度系统,将处理NFC标签的权利交给某个窗口(优先级最高)1、在onCreate()中获得NfcAdapter对象;2、创建与该Activity关联的PendingIntent;3、指定一个用于处理NFC标签的窗口;通常会在onResume()方法中采用nfcAdapter.enableForegroundDispatch()来实现;4、禁止窗口处理NFC标签。采用nfcAdapter.disableForegroundDispatch()来实现。,1、检查上次作业2、检查预习题目3、上次课程的总结4、NDEF的Uri格式结构5、android应用程序记录的创建6、NF

12、C的前台调度系统7、应用示例8、本次课的作业9、下次课的预习内容,第3讲 NFC程序设计(三),7、应用示例,第3讲 NFC程序设计(三),1、检查上次作业2、检查预习题目3、上次课程的总结4、NDEF的Uri格式结构5、android应用程序记录的创建6、NFC的前台调度系统7、应用示例8、本次课的作业9、下次课的预习内容,8、本次课的作业,在上次电子名片标签的作业上,添加个人网址信息。在扫描过标签后,除了将名片自动保存到通信录,手机还能自动加载标签所设置的网址。编写一个自动手机背景设置标签,能修改闹钟的时间设置和闹钟的开启。,第3讲 NFC程序设计(三),1、检查上次作业2、检查预习题目3、上次课程的总结4、NDEF的Uri格式结构5、android应用程序记录的创建6、NFC的前台调度系统7、应用示例8、本次课的作业9、下次课的预习内容,9、下次课的预习内容,1、Mifare标签的分类和存储结构2、MifareClassic类中的常用方法及用途,END,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号