物聯(lián)網(wǎng)設(shè)備和單純的嵌入式設(shè)備最大的區(qū)別是否聯(lián)網(wǎng),如果能夠聯(lián)網(wǎng),就需要對(duì)設(shè)備端和云端進(jìn)行相應(yīng)的編程或者設(shè)置,讓它們之間進(jìn)行通信;如果不需要聯(lián)網(wǎng),那么燒錄軟件,讓設(shè)備自動(dòng)工作即可,不需要考慮網(wǎng)絡(luò)通信問(wèn)題。
此外,有些場(chǎng)合需要提供移動(dòng)端APP,而且一旦有了APP加持,能夠讓你的項(xiàng)目顯得瞬間高大上。對(duì)于找工作的同學(xué)而言,能夠制作APP可以讓你找工作更加容易,對(duì)于小公司而言,能夠不依賴第三方提供物聯(lián)網(wǎng)APP,也能極大地節(jié)約研發(fā)成本。
本文就簡(jiǎn)單介紹當(dāng)前幾種物聯(lián)網(wǎng)控制APP模式,讓大家了解幾種不同的技術(shù)路線。
在線生成APP源代碼模式
在線生成APP源代碼的模式以“機(jī)智云”為代表,當(dāng)你的項(xiàng)目設(shè)置完成后(定義數(shù)據(jù)點(diǎn)是關(guān)鍵),可以在線生成代碼包,然后下載之后進(jìn)行編譯。
在機(jī)智云開(kāi)發(fā)者中心可對(duì)項(xiàng)目的移動(dòng)端程序進(jìn)行設(shè)置。
可參考文章使用ESP8266模塊DIY一個(gè)熱水器控制器,使用機(jī)智云后臺(tái) (二)。
總結(jié)
優(yōu)點(diǎn):可以通過(guò)簡(jiǎn)單的步驟生成源代碼,后續(xù)還可以修改。
缺點(diǎn):開(kāi)機(jī)畫面以及步驟是機(jī)智云統(tǒng)一風(fēng)格的,還需要登錄用戶,不能打開(kāi)APP就是控制自己設(shè)備的界面。
在線APP開(kāi)發(fā)方式
更方便的在線APP開(kāi)發(fā)方式是使用機(jī)智云新版開(kāi)發(fā)平臺(tái)(需提前定義數(shù)據(jù)點(diǎn)),在線自定義APP的功能頁(yè)面、展示信息,自己替換logo、根據(jù)模板來(lái)修改圖標(biāo)位置大小等,開(kāi)發(fā)出自己的APP。
進(jìn)入到“人機(jī)交互”界面之后,就可配置APP的界面。
總結(jié)
優(yōu)點(diǎn):基本不用什么APP開(kāi)發(fā)基礎(chǔ),也不用修改代碼,就能形成個(gè)性化APP。
第三方公版APP子設(shè)備模式
同樣以“ 機(jī)智云”為代表,這類APP 的特點(diǎn)是大廠提供“公版APP“,自己的設(shè)備可以通過(guò)申請(qǐng)加入到大廠的平臺(tái)中,作為一個(gè)子設(shè)備(APP界面中的一個(gè)特定的小圖標(biāo))運(yùn)行,點(diǎn)擊了這個(gè)小圖標(biāo)之后,就進(jìn)入了一個(gè)專屬的頁(yè)面。
總結(jié)
優(yōu)點(diǎn):只需要在機(jī)智云開(kāi)發(fā)者平臺(tái)創(chuàng)建項(xiàng)目定義數(shù)據(jù)點(diǎn),聯(lián)系機(jī)智云申請(qǐng)綁定相關(guān)設(shè)備,即可直接使用。
APP殼嵌套網(wǎng)頁(yè)模式
APP殼嵌套網(wǎng)頁(yè)模式的開(kāi)發(fā),核心是自己像開(kāi)發(fā)網(wǎng)站一樣,做出來(lái)一個(gè)能夠控制自己物聯(lián)網(wǎng)設(shè)備的網(wǎng)頁(yè)或者網(wǎng)站,然后做一個(gè)APP的殼,打開(kāi)APP之后,界面實(shí)際上是打開(kāi)了自己網(wǎng)站的頁(yè)面。
再簡(jiǎn)單點(diǎn)來(lái)說(shuō),就像是做了一個(gè)瀏覽器APP,只不過(guò)這個(gè)瀏覽器是沒(méi)有地址輸入框的,打開(kāi)就是自己的網(wǎng)站。
制作的方法有兩種,第一種是自己寫框架,第二種是通過(guò)第三方生成框架。
框架的核心是瀏覽器。自己寫框架,可以用Android Studio寫,調(diào)用內(nèi)置的webview組件,瀏覽指定的網(wǎng)址;第三方框架,很多是支持無(wú)代碼編程的,比如H5APK等等,搜索關(guān)鍵詞“安卓網(wǎng)頁(yè)封裝APP”,就可以將你的網(wǎng)頁(yè)打包成APP了。
總結(jié)
優(yōu)點(diǎn):如果是做了APP框架,那么理論上它就是一個(gè)瀏覽器,不用升級(jí)的。你的網(wǎng)站或者網(wǎng)頁(yè)更新了之后,再次打開(kāi)它,就是最新的頁(yè)面。不用像安卓原生應(yīng)用一樣老是升級(jí)。
缺點(diǎn):要有域名、服務(wù)器(或者物聯(lián)網(wǎng)云平臺(tái))、還要經(jīng)過(guò)工信部和公安備案的過(guò)程,比較繁瑣。第三方封裝還需要收費(fèi)。
Android Studio 原生APP模式
不管是那種APP,其設(shè)計(jì)目的都是讓物聯(lián)網(wǎng)設(shè)備可以在移動(dòng)端進(jìn)行控制,讓用戶用手機(jī)或者平板等移動(dòng)設(shè)備可以方便地進(jìn)行操作。
對(duì)于商業(yè)項(xiàng)目來(lái)說(shuō),一般要求APP定制化,客戶需要什么就定制成什么樣子。在這種情況下,最好還是要學(xué)會(huì)自己編寫APP才能實(shí)現(xiàn)客戶需求。
其實(shí)APP的核心是實(shí)現(xiàn)與云后臺(tái)的通信和設(shè)備控制。它難在通信能否實(shí)現(xiàn)。
通信的核心在哪里?在MQTT客戶端。它其實(shí)并不難。為什么不難?我們搞清楚它是怎么工作的,然后在APP源代碼里面實(shí)現(xiàn)它就行了。
機(jī)智云通訊模型
設(shè)備與云端的通訊分為了GService和M2M:GService采用http協(xié)議,負(fù)責(zé)設(shè)備注冊(cè)、注銷等;M2M采用MQTT協(xié)議,負(fù)責(zé)進(jìn)行實(shí)時(shí)性較強(qiáng)的數(shù)據(jù)操作。
這種雙中心的劃分非常棒,充分發(fā)揮了兩種協(xié)議的優(yōu)勢(shì),http的特點(diǎn)是簡(jiǎn)單,MQTT的訂閱通知特性又有非常棒的實(shí)時(shí)性。普通的云平臺(tái),就單獨(dú)使用http完成了注冊(cè)登錄、還做數(shù)據(jù)上報(bào),下行控制等功能。
開(kāi)發(fā)指南:
開(kāi)發(fā)一款A(yù)PP:
總結(jié)下來(lái)編寫APP并不難,通過(guò)本篇分析常見(jiàn)的APP開(kāi)發(fā)模式,希望大家能夠?qū)ξ锫?lián)網(wǎng)APP開(kāi)發(fā)有所了解,根據(jù)所開(kāi)展的項(xiàng)目,合理選擇開(kāi)發(fā)模式,在預(yù)算和時(shí)間可控范圍內(nèi),快速地開(kāi)發(fā)出適合的APP。
原文標(biāo)題:帶你了解物聯(lián)網(wǎng)控制APP的幾種模式
文章出處:【微信公眾號(hào):機(jī)智云開(kāi)發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
審核編輯:湯梓紅
-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2902文章
44117瀏覽量
370421 -
APP
+關(guān)注
關(guān)注
33文章
1566瀏覽量
72338 -
機(jī)智云
+關(guān)注
關(guān)注
2文章
573瀏覽量
26362
原文標(biāo)題:帶你了解物聯(lián)網(wǎng)控制APP的幾種模式
文章出處:【微信號(hào):IoTMaker,微信公眾號(hào):機(jī)智云開(kāi)發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論