NFC:Arduino、Android與PhoneGap近距離無線通訊

來源:互聯網
上載者:User

標籤:android   blog   http   io   os   使用   java   ar   strong   

NFCArduinoAndroidPhoneGap近距離無線通訊(第一本全面講解NFC應用開發的技術著作移動智慧型裝置近距離通訊編程實戰入門

【美】Tom Igoe(湯姆.伊戈),Don Coleman(唐.科爾曼),Brian Jepson(布萊恩.傑普森) 著  

金建剛 馮依 姚尚朗 譯

ISBN 978-7-121-23997-7

2014年9月出版

定價:65.00元

244

16

編輯精選

歡迎進入近距離無線通訊(NFC)的世界,這種飛速發展的新技術能通過無線訊號在靠近的電子裝置間進行資料轉送。本書作為動手指南,通過大量的例子、代碼、練習和一步步的項目操作,教你如何在Android裝置、Arduino微處理器平台和嵌入式Linux裝置上開發NFC 應用程式。

你也將學到用 NFC 資料交換格式(NDEF)寫應用程式,通過PhoneGap、Arduino 和 node.js 裡提供的 NDEF 函數從 NFC 標籤裡讀訊息,或者與其他 NFC 裝置交換資料。如果你熟悉 HTML 和JavaScript,那麼你就準備好開始 NFC 吧。

■ 深入NFC體繫結構,瞭解NFC和RFID的關係

■ 用PhoneGap和它的NFC外掛程式寫Android上的NFC應用程式用例

■ 深入瞭解NDEF結構:測試已有的寫標籤程式,然後寫自己的標籤程式

■ 用PhoneGap事件監聽器來監聽和過濾NDEF訊息

■ 寫一個完整的Android應用程式來控制家裡的燈和音響

■ 用Arduino建立一個賓館登記應用程式,從入住到開門鎖

■ 寫一個P2P的NFC訊息程式,在兩個Android裝置間傳訊息

■ 通過Raspberry Pi和BeagleBone上的例子來探索嵌入式Linux應用程式的開發

內容提要

《NFC:Arduino、Android與PhoneGap近距離無線通訊》將帶你走入近距離無線通訊(NFC)的世界,這是一種快速發展的技術,它能夠讓裝置近距離交換資料或使用無線電訊號。《NFC:Arduino、Android與PhoneGap近距離無線通訊》通過大量執行個體、代碼範例、練習以及逐步分析的項目,向你展示了如何為Arduino、Android 和PhoneGap 編寫近距離無線通訊的應用程式。《NFC:Arduino、Android與PhoneGap近距離無線通訊》內容包括:深入研究NFC 架構;為Android 寫帶有PhoneGap 和NFC 外掛程式的應用範例;使用PhoneGap 事件監聽器監聽並過濾NDEF資訊;建立一個能控制家中燈光和音樂的Android 應用;編寫兩個Android 裝置之間點對點的NFC資訊等。

目錄

第1 章 簡介 ................................................................. 1

本書面向哪些讀者 .................................................................................................2

推薦閱讀 ................................................................................................................2

本書有哪些內容 .....................................................................................................3

你需要什麼 ............................................................................................................4

硬體 .................................................................................................................4

軟體 .................................................................................................................6

其他不錯的NFC 應用 .....................................................................................7

本書所使用的約定 .................................................................................................7

使用程式碼範例 ........................................................................................................8

Safari® 聯機叢書 ....................................................................................................8

聯絡我們 ................................................................................................................9

致謝 .....................................................................................................................10

第2 章 NFC 和RFID .................................................. 11

什麼是RFID ........................................................................................................ 11

什麼是NFC .........................................................................................................12

RFID 如何工作 ....................................................................................................13

RFID 標準體系 ..............................................................................................13

NFC 如何運作 ......................................................................................................13

NFC 資料交換格式(NDEF) ........................................................................14

NFC 的體繫結構 ..................................................................................................15

NFC 標籤類型 ...............................................................................................16

從哪裡買標籤 ................................................................................................17

裝置與標籤類型匹配 ...........................................................................................18

能用NFC 做什麼 .................................................................................................19

總結 .....................................................................................................................20

第3 章 從PhoneGap 和PhoneGap-NFC 庫開始 ........ 21

為什麼選擇Android.............................................................................................21

你的第一個PhoneGap 應用:Hello, World ! .....................................................22

設定開發環境 ................................................................................................22

建立PhoneGap 項目......................................................................................27

重要檔案 .......................................................................................................30

一個簡單的定位應用程式 ....................................................................................32

NFC 讀取器 .........................................................................................................38

安裝NFC 外掛程式 ..............................................................................................39

編寫NFC 讀取器應用程式 ...........................................................................40

故障排除 .......................................................................................................43

總結 .....................................................................................................................44

第4 章 NDEF 介紹 .................................................... 45

NDEF 結構 ...........................................................................................................45

TNF(類型名稱格式) ...................................................................................46

載荷類型 .......................................................................................................47

載荷ID ..........................................................................................................48

載荷 ...............................................................................................................49

記錄結構 ..............................................................................................................49

記錄頭部 .......................................................................................................50

一個NDEF 訊息可以有多大 .........................................................................50

記錄組塊 .......................................................................................................51

參考 ...............................................................................................................51

NDEF 實戰 ...........................................................................................................52

一個標籤寫入應用:Foursquare 簽到 ..................................................................56

把一條NDEF 記錄寫入標籤 .........................................................................57

寫不同的記錄類型 ........................................................................................60

PhoneGap-NFC 的NDEF 輔助函數概述 .......................................................65

總結 .....................................................................................................................67

第5 章 監聽NDEF 資料 ............................................. 69

PhoneGap-NFC 的事件監聽 .................................................................................69

一個NDEF 讀取器應用 .......................................................................................71

監聽多個事件 ................................................................................................72

讀取NDEF 訊息 ...........................................................................................75

使用記錄類型過濾標籤 .................................................................................78

使用MIME 類型過濾 ....................................................................................79

Android 標籤分發系統 .........................................................................................82

intent 類型 .....................................................................................................83

Android 應用記錄 .........................................................................................86

總結 .....................................................................................................................87

第6 章 一個NFC 應用實踐 ......................................... 89

使用者互動 .............................................................................................................91

瞭解Hue ..............................................................................................................92

Hue 資料格式 ................................................................................................94

Hue 的REST API ..........................................................................................97

Android shell ........................................................................................................97

PhoneGap 媒體API ..............................................................................................98

使用者介面(UI) ....................................................................................................99

應用程式代碼 .................................................................................................... 101

通用功能 .................................................................................................... 102

全域事件處理常式 ..................................................................................... 104

Hub 通訊功能 ............................................................................................. 106

使用者介面控制項事件處理常式 ....................................................................... 110

音樂介面事件處理常式 .............................................................................. 113

NFC 事件處理常式 ..................................................................................... 118

啟用後台調度 ............................................................................................. 120

總結 ................................................................................................................... 121

第7 章 Arduino 和NFC 介紹 .................................... 123

數字化遇上物理:Arduino ................................................................................ 123

NFC 的硬體核心 ................................................................................................ 125

Arduino 開發環境 .............................................................................................. 125

串列通訊 ..................................................................................................... 129

安裝Arduino 庫 .......................................................................................... 130

Arduino 的NDEF 庫 .......................................................................................... 132

讀取Arduino 中的NDEF ............................................................................ 134

在Arduino 中寫入NDEF ............................................................................ 137

微型控制器NFC 應用:酒店鑰匙卡 ................................................................. 138

互動和資料格式 .......................................................................................... 140

Arduino 的NDEF 寫入器裝置 .................................................................... 142

Arduino 的NDEF 讀取器和門鎖裝置 ......................................................... 148

Arduino NDEF 寫入器裝置的瀏覽器介面 ......................................................... 156

Node.js 的應用規範:package.json ............................................................. 156

用戶端代碼 ................................................................................................. 157

伺服器端代碼 .............................................................................................. 158

總結 ................................................................................................................... 162

第8 章 點對點(P2P)交換 ...................................... 165

在PhoneGap 中發送P2P 訊息 ........................................................................... 167

在PhoneGap 中接收P2P 訊息 ........................................................................... 175

切換 ................................................................................................................... 177

靜態切換 ..................................................................................................... 178

在PhoneGap 中發送切換訊息 ........................................................................... 178

用Arduino 進行P2P .......................................................................................... 184

卡模擬 ................................................................................................................ 184

總結 ................................................................................................................... 185

第9 章 嵌入式系統裡的NFC .................................... 187

嵌入式Linux 裝置和包管理器介紹 ................................................................... 187

網路、USB 和NFC .................................................................................... 188

嵌入式Linux 上的NFC :概覽 .......................................................................... 190

通用功能 ............................................................................................................ 191

選擇熟悉的編輯工具 ................................................................................... 191

瞭解包管理器 .............................................................................................. 191

設定日期和時間 ......................................................................................... 192

建一個下載目錄 ......................................................................................... 193

BeagleBone 特性 ........................................................................................ 193

Raspberry Pi 特性 ....................................................................................... 193

安裝NFC 工具 ................................................................................................... 194

安裝libusb 相容庫 ..................................................................................... 195

安裝libnfc .................................................................................................. 195

Raspberry Pi 或BeagleBone 安裝測試 ....................................................... 196

安裝libfreefare ........................................................................................... 196

libnfc 和libfreefare 的命令列工具 ..................................................................... 197

Node.js 的NDEF 讀寫 ....................................................................................... 199

標籤寫入器的Web 介面 .................................................................................... 203

標籤控制物理輸出 ............................................................................................. 205

BeagleBone 版本 ......................................................................................... 205

Raspberry Pi 版本 ....................................................................................... 207

總結 ................................................................................................................... 211

附錄A NFC 規範代碼 ............................................... 213

作者簡介

Tom Igoe 在紐約大學Tisch藝術學院教物理計算和網路互動電訊項目的課程。

Don Coleman 是PhoneGap NFC plug-in 的作者,領導著 Chariot Solutions 的移動實踐。

Brian Jepson 是 Maker Media 資深編輯,一個駭客,Providence Geeks and the Rhode Island Mini Maker Faire 的召集人之一。

前言

譯者序

本書最開始是eoe 社區CTO 姚尚朗(iceskysl)推薦我們翻譯的,很巧的是,之前我在上海的時候跟本書裡面提到的Arduino 有過一面之緣,並親眼目睹過對其進行編程,然後運行出來之後的效果。真的感覺非常的酷,並且也非常容易上手,並沒有想象中的那麼神秘。恰好本書的內容跟Android 也有非常大的聯絡,而NFC 也是目前移動互連網中非常熱門的技術。試看了一些章節之後,知道本書其實也沒有涉及非常神秘、難懂的程式設計,或是一些其他門檻很高的內容。

本書並不是完全為程式員編寫的,你可以是程式愛好者,也可以是經驗老道的程式員;可以是做軟體的,也可以是做相關硬體的;可以是Android 開發人員,也可以是iOS、黑莓、Windows Phone 等;甚至可以是Web 開發人員。不管你使用什麼語言進行開發,都能很快地上手。當然,如果你對我上面提到的技術都只是聽過那也沒關係,因為本書的門檻很低,只要你跟著本書一步步走,只要你對NFC 感興趣,想瞭解它的工作原理,以及知道能用它做些什麼,那麼本書絕對是一個非常好的選擇。

本書從什麼是NFC 開始介紹,循序漸進地告訴我們如何去選擇正確的、簡單的工具來搭建一個簡易的NFC 應用。這裡面還會涉及一些技術,比如HTML、JavaScript,如果你能完全瞭解當然最好,不過就算你只大概瞭解一些基本的標籤、基本的文法也是沒問題的;一旦你跟著本書開發出了一個簡單的NFC 應用,後續你想怎麼去豐富它,我想那都是很容易的事情了。畢竟萬事開頭難。

在翻譯本書的過程中,由於從廣州來北京發展,所以翻譯的進度有一些落後,特別感謝本書的翻譯搭檔hexter 對我的協助,在我由於其他事情而無暇顧及的時候幫我分擔了一部分工作。也要感謝出版社編輯對本書的校稿,因為翻譯其實是一件非常枯燥的事情,在翻譯的過程中難免會出現一些語句不通順,甚至上下文不銜接的問題,編輯們得一行行地看,看不懂的需要標記出來,或者提供更好的句子。所以很感謝他們,讓本書能順利出版,然後為那些想瞭解NFC,並且想做出點什麼的人提供一些好的入門材料。

NFC:Arduino、Android與PhoneGap近距離無線通訊

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.