物聯(lián)傳媒 旗下網(wǎng)站
登錄 注冊

如何開發(fā)一個iOS小程序并且通過NFC標簽觸發(fā)

作者:意法半導體
來源:企業(yè)供稿
日期:2021-07-07 11:44:28
摘要:現(xiàn)今,商家與客戶互動有了一種新的方式 —— App Clip(蘋果小程序)和NFC標簽。這個功能讓用戶可以在手機操作系統(tǒng)上運行小程序,無需到應(yīng)用商店下載安裝軟件。
關(guān)鍵詞:ios小程序NFC標簽

現(xiàn)今,商家與客戶互動有了一種新的方式 —— App Clip(蘋果小程序)和NFC標簽。這個功能讓用戶可以在手機操作系統(tǒng)上運行小程序,無需到應(yīng)用商店下載安裝軟件。小程序只是在屏幕上彈出信息,此功能為開發(fā)新的客戶關(guān)系創(chuàng)造了機會。例如,咖啡店可以提供更實用的積分卡,零售商可以讓虛擬錢包更好用。商家可以通過多種方式觸發(fā)小程序,其中一種是指向某一個URL地址的NFC標簽。當用戶iPhone靠近標簽時,手機會自動發(fā)現(xiàn)URL并啟動小程序。原理簡單的同時成本也低廉。下面我們探討一下商家使用小程序都需要些什么。

image.png

App Clip是什么? App Clip被稱為“ 輕量版的手機應(yīng)用軟件”。這種小軟件壓縮前二進制代碼量小于10 MB,并且主要提供應(yīng)用程序的一小部分功能。例如,一家咖啡公司的完整應(yīng)用可以提供咖啡店的名錄、近期促銷活動、銷量排序以及積分卡,但App Clip小程序只會顯示積分卡。這些功能確保用戶獲得即時體驗,即使手機移動網(wǎng)速很低,用戶也能獲得實時體驗。用戶還能獲得簡便快捷的使用體驗。通過手機靠近NFC標簽啟動小程序,可以減少很多使用障礙,為不太熟悉手機應(yīng)用的新客戶打開了數(shù)字互動的大門。下面來看一下ST的iOS應(yīng)用開發(fā)者Vincent Latorre的小程序開發(fā)經(jīng)驗。

App Clip:客戶端或NFC配置

  1. 準備ST25-TAG-BAG-U套件

image.png

ST25-TAG-BAG-U 標簽套件包含: 1. ST25TV02K, 2. ST25TA02KB, 3. ST25TV02K HC, 4. ST25TV512, 5. ST25TA64K

在整個配置過程中,最容易的環(huán)節(jié)是創(chuàng)建一個NFC標簽,在標簽內(nèi)寫入指向小程序的URL。這個過程非常簡單,簡單到創(chuàng)建一個正常工作的演示軟件,連一行代碼都不用寫。出于演示目的,我們將使用兩個ST25TV02K NFC標簽,其中一個用于存放小程序的URL地址,另一個將用作概念驗證,講解可以在操作系統(tǒng)中存儲的或緩存的功能容器。

如果想開發(fā)一個以App Clip小程序為主的演示,第二個標簽是不需要的,開發(fā)者可以只用第一個標簽。但是,我們想借此機會講解演示如何寫存儲區(qū)塊,并提供具體證據(jù)證明ST的小程序確實在工作,而不是給大家看一個展示的屏幕。這兩個標簽都是ST25-TAG-BAG-U套件中的小圓標簽。用戶必須到應(yīng)用商店下載我們的NFC Tap應(yīng)用,才能讀寫標簽。

寫URL

我們拿出第一個ST25TV02K標簽。以下演示假設(shè)標簽是空白標簽。第一步是在主屏上選擇Read Tag,然后將手機靠近標簽,屏幕上將出現(xiàn)ST25TV02K的信息。下一步,點擊屏幕右下方的...圖標 ,然后選擇Areas Content Editor選項,最后,用手機掃描標簽。如果是空白標簽,則會出現(xiàn)一個對話框,顯示存儲器大小(例如256字節(jié)),并提示No NDEF message。

在寫入一條NDEF消息前,用戶需要點擊提示No NDEF message的對話框,隨后在屏幕上將出現(xiàn)一個白色方框和藍色箭頭。向左滑動白色方框,將會彈出一個菜單,其中包含Add、 Edit、Insert 和 Exec選項。在選擇 Add后,

1. 選擇NdefUriRecord 2. 輸入https://www.myst25.com/clip。務(wù)必選擇https,否則小程序?qū)⒉粫⒓达@示。

3. 按Validate按鈕,然后寫標簽

了解功能容器

第二個ST25TV02K是我們的測試標簽,我們還可以通過它了解Type-5標簽中NDEF支持功能。這個演示證明ST的小程序正在讀取標簽,而不是在展示一個手機屏幕。為了增加演示的趣味性,我們效仿我們關(guān)于NDEF管理的應(yīng)用筆記中的方法。事實上,那篇文章講解的是如何將ST25TV標簽配置成支持NDEF消息的NFC Type-5標簽,簡而言之,就是在第一個存儲塊中寫入一個有效的功能容器(CC)。那篇文章給用戶詳解了整個設(shè)置過程,我們可以在ST25TV02K的第一個存儲塊內(nèi)直接寫入四字節(jié)CC:E1 40 20 01h。

寫測試標簽

在執(zhí)行寫標簽操作前,打開NFC Tap iOS應(yīng)用,然后

1. 選擇Read Tag,然后掃描第二個ST25TV02K標簽

2. 檢查CC File部分,確保標簽是空白的。如果Magic Number是0x00,則表示標簽內(nèi)不含任何信息。

現(xiàn)在,我們激活NDEF消息傳輸支持功能,然后寫入一小條消息。

1. 選擇屏幕底部的More ,然后選擇Areas Content Editor。這時軟件將會讓你掃描標簽,然后,發(fā)現(xiàn)一個256字節(jié)的可寫區(qū),里面沒有內(nèi)容。

2. 點擊Area 1

3. 在屏幕上出現(xiàn)No NDEF Record的提示信息。向左滑動對話框,然后出現(xiàn)一個菜單,選擇 Add。

4. 點擊NdefTextRecord,清除現(xiàn)有文本,然后輸入Hello World!

5. 按Validate按鈕,然后將手機靠近標簽,寫入NDEF消息。

測試App Clip

只有當手機上沒有安裝完整的應(yīng)用軟件時,小程序才會彈出。因此,在掃描第一個有小程序URL地址的ST25TV02K標簽前,如果安裝了NFC Tap軟件,必須刪除軟件。當手機檢測到第一個標簽時,就會在觸屏上顯示小程序卡片,詢問用戶是否要打開小程序或從應(yīng)用商店下載應(yīng)用。打開小程序后會顯示一個精簡版的NFC Tap應(yīng)用軟件,其中Read NDEF 是灰色不可用,但Read Tag 可用。選擇讀取標簽選項,然后掃描第二個ST25TV02K標簽,證明小程序讀取我們的標簽數(shù)據(jù)。向下滾動屏幕,我們看到Magic Number是 0xE1,證明小程序正在掃描我們剛才配置的標簽。

后臺或應(yīng)用開發(fā)和Web服務(wù)器配置

Xcode項目 對于希望了解更多信息的開發(fā)人員,第一步是下載我們的iOS應(yīng)用程序的源代碼(STSW-ST25IOS001)。工程師只需在Apple IDE開發(fā)環(huán)境中打開下載的文件,即可開始研究我們的實現(xiàn)方法。首先要注意的是,在應(yīng)用程序中充當小程序的代碼段是一個特定目標。為輔助開發(fā)者開發(fā)小程序,蘋果提供了專用的App Clip模板,小程序可以與Apple Pay配合使用,并可以用蘋果賬號登錄軟件。這個新系統(tǒng)還得益于一個特殊的通知和地理位置定位系統(tǒng)。此外,一個iOS軟件可以有多個App Clip。在Xcode中,開發(fā)人員應(yīng)注意Signing & Capabilities 選項卡,并記住團隊名稱和捆綁標識。

下一步是使用App Store Connect Web界面創(chuàng)建App Clip小程序。在此處,開發(fā)人員將上傳圖片,該圖片將顯示在iOS卡片上,吸引用戶啟動小程序。點擊Advanced App Clip

Experience 將打開一個新菜單,設(shè)置指向小程序的URL地址。此外,開發(fā)人員還可以請求操作系統(tǒng)檢查移動設(shè)備的地理位置,商家可以選擇使用此功能將小程序與商鋪或特定地點關(guān)聯(lián)。

服務(wù)器端

Web服務(wù)器配置非常簡單。 在Xcode和App Store Connect內(nèi)定義的URL中,例如http://www.myst25.com/clip,必須有一個index.html 文件,而且其元標記必須包含應(yīng)用程序ID和小程序捆綁ID。如下所示,文件正文可以是空白的,最重要的地方是元標記本身。

文件名為 apple-app-site-association的文件是在網(wǎng)絡(luò)服務(wù)器的根文件夾(例如/ www)中必須存在的第二個重要文件。該文件僅列出下面的數(shù)組:

"appclips" : {

"apps": ["TEAM_NAME.BUNDLE_ID (e.g., UL3MK8FNMR.com.st.st25ncf.clip)"],

"paths": ["DESTINATION (e.g., path/*)"]