Skip to main content

按幾個按鈕就能建構物聯網行動應用程式

行動應用程式是控制物聯網裝置理所當然的選擇。既有直覺化的介面,又有隨身攜帶的便利性,讓行動應用程式成為最容易管理連線設備的方法。但是開發行動應用程式卻不容易。應用程式的設計需要使用獨特的程式語言,需要 UX(使用者體驗)的專業,也需要其他專門的技能。嵌入式設備的工程團隊可能完全沒有這些必要技能。儘管有可能在團隊的各項專業技能之中再添加上行動應用程式設計這一項,但這麼做卻可能耗時且成本高昂。最終應用程式開發若未正確執行,成果更可能令人失望。另一種方法則是將專案委外。不過根據應用程式開發公司 Savvy Appa 指出,應用程式開發成本通常最低約 $50,000 美金,最高價格則甚至超過 $500,000 美金。如此負擔,使得許多連線裝置製造商均卻步不前。

製作行動應用程式:基礎知識

為理解其中挑戰,首先為讀者介紹一個典型的工作流程:

  • 開發物聯網解決方案的行動應用程式第一步驟,即是辨識使用案例與需求的大方向。
  • 其後,由設計團隊建立 UX 流程概略描述顧客將如何與其連線產品進行互動。
  • 完成設計後,再把需求與文件交給開發人員,由他們著手實作成為行動應用程式。

除此之外,因為 iOS 和 Android 的開發完全不同,需要不同的技能,也使得這項任務更加複雜。iOS 應用程式使用 Objective C 和 Swift 語言,而 Android 應用程式則使用 Java。這就形成了開發物聯網裝置行動應用程式最初的挑戰,因為 OEM 必須依據目標使用者客群而決定應支援哪一個平台,或兩者均支援。此決定切不可輕率,因為一旦選定平台,就必須在連線裝置的整個部署生命週期提供支援。

額外需求:應用程式基礎架構

行動應用程式還需要另外兩個基礎架構要素:韌體(就此例而言,即指實際於物聯網邊緣裝置上執行的程式本身)以及雲端。行動應用程式要有效果,目標物聯網裝置上執行的韌體就必須與雲端上的後台以及行動應用程式進行連線,才能夠提供狀態更新和遠端管理功能。這通常是透過整套 API 和程式庫達成,而這些則應使用的處理器及其他硬體而變。視應用程式需求,例如所產生的資料量與產生頻率、安全功能或隱私考量等,行動應用程式部署的雲端部分可選擇於公有雲或就地部署伺服器中執行。當然,兩者在成本和工程資源方面也就各有取捨。

連線考量

開發行動應用程式也必須考量連線。工程師必須顧及使用者將如何連線物聯網裝置、連線目的,以及連線頻率。例如,Wi-Fi 是連線網際網路的標準方法,可藉此連線雲端,讓伺服器能夠從遠端與裝置互動。但是在特定情況下,當使用者緊鄰裝置且無需龐大頻寬時,則可選用如藍牙等其他連線技術。

拖放式開發應用程式能夠瞬間提升物聯網 UX

OEM 若想要為物聯網裝置迅速增添一套可作用的行動應用程式,則這許多要素均可能導致現有資源不敷使用。所幸還有另一種做法:範本式的應用程式工具。這些專為物聯網所設計的工具能夠提供拖放式的開發體驗,節省時間也壓低成本。例如 Blynk Inc.Blynk 軟體平台就是一個很好的例子(圖 1)。這套原生的行動應用程式建構工具適用於 iOS 及 Android,讓開發人員只要按幾個按鈕即可輕鬆建立品牌化的應用程式,並將其發佈至 App Store 或 Google Play。

圖 1. Blynk 提供行動裝置原生的物聯網軟體平台。(資料來源:Blynk Inc.)

Blynk 讓開發人員從各有不同功能的許多小工組中選擇,直接「組裝」成一套行動 UI(圖 2)。例如,可將燈光開關的按鈕、可視覺化呈現感測器資料的圖表、可由特定事件觸發的推送通知等小工具。而這一切均可直接從智慧型手機上進行開發。

圖 2. 不限定硬體的拖放式小工具讓開發人員快速輕易添增功能。

在韌體方面,Blynk 提供各種程式庫與 API 可將任何 MCU 或單板電腦連線至 Blynk Cloud。這些程式庫與 API 負責建立連線、傳送和接收資料。由於這些均以小段的程式碼方式封裝,因此亦同時能夠預留充足記憶體容量供其他重要裝置功能使用。目前 Blynk 支援超過 400 種硬體與連線模組。這些包括各種以 Intel® 技術為基礎的單板電腦 (Single-Board Computer,SBC),如 ADI Engineering, Inc.MinnowBoard TurbotSECOUDOO X86(圖 3)。

圖 3.  SECO UDOO X86 是總計超過 400 種支援平台當中的一種。(資料來源:SECO)

在後台方面,開放原始碼的 Blynk Cloud 提供安全、輕量級的伺服器,可供 Blynk 平台所有使用者免費使用。Blynk Cloud 公有雲目前每個月處理超過 330 億條訊息。另外視應用程式需求,也能夠於私有平台執行 Blynk Cloud。Blynk 應用程式的另一個特點就是提供了 HTTP API,能夠整合其他物聯網雲端的資料。如此一來,物聯網應用的 OEM 就能夠開發全方位的行動應用程式,將其他業務系統及合作夥伴的資訊整合,進而提升易用性與 UX。為更佳服務企業客戶,Blynk 平台也已著手添增連接器以整合 Microsoft AzureAmazon AWS IoT、IBM BlueMix 以及其他各大雲端平台。目前市面上已有數千款物聯網產品使用 Blynk 開發平台,包括智慧家庭、農業、機器人、醫療和精密設備監控等各種領域。若要搶先一步瞭解行動應用程式能提供的深入見解、UX 和 ROI,請參閱 Blynk 網站所提供的教學和展示應用程式。

作者簡介

Jamie contributes, edits, and manages content for Embedded Computing Design, while also managing details and deadlines for all OpenSystems Media events. She was a freelance writer for several years, has a background in public relations and marketing, and holds a BA in Literature, Writing & Film from Arizona State University.

Profile Photo of Jamie Leland