谷歌給物聯(lián)網(wǎng)設(shè)備的開發(fā)帶來了Android及其生態(tài)系統(tǒng)。開發(fā)人員將像之前他們?yōu)橐苿釉O(shè)備編寫應(yīng)用程序那樣,為這些設(shè)備編寫應(yīng)用程序。
谷歌已經(jīng)將一些Brillo的主要技術(shù)結(jié)合到了他們的移動操作系統(tǒng)中,也就是名為Android Things的以物聯(lián)網(wǎng)設(shè)備為目標(biāo)的新解決方案。除了一般的Android API和訪問谷歌的各種服務(wù)的庫之外,該嵌入式操作系統(tǒng)中還包含了一個名為物聯(lián)網(wǎng)支持庫(Things Support Library)的新庫,這個庫有兩個主要功能:通過多種協(xié)議和接口(GPIO、PWM、I2C、SPI、UART等)訪問傳感器和執(zhí)行器的外圍I/O API;以及一個用戶驅(qū)動API(User Driver API),可以給應(yīng)用程序添加新的設(shè)備驅(qū)動,用于將硬件事件注入系統(tǒng),使它們可以為應(yīng)用程序所用。尤其是,用戶驅(qū)動API允許開發(fā)人員在原廠設(shè)置提供的現(xiàn)有功能之外,擴展對物聯(lián)網(wǎng)設(shè)備可以做的事。為Brillo所寫代碼需要被移植,替代“底層I/O代碼和SELinux配置,同時調(diào)用新的周邊API”。
由物聯(lián)網(wǎng)操作系統(tǒng)Android Things所帶來的最大的改進(jìn)就是與整個Android生態(tài)系統(tǒng)的整合:通過Android Studio用Android API進(jìn)行開發(fā),通過正常的Android渠道為系統(tǒng)提供一般操作和安全更新,訪問谷歌的服務(wù),如短信、語音、認(rèn)證、游戲,助理等等。同時開發(fā)商可以繼續(xù)通過Android NDK用C或C++寫代碼,他們現(xiàn)在也可以選擇用Java寫代碼。
物聯(lián)網(wǎng)操作系統(tǒng)Android Things支持SoM(System-on-Modules,模塊化系統(tǒng)),也就是SoC(System-on-Chip,片上系統(tǒng))加RAM、FLASH存儲器、WiFi、藍(lán)牙和其他一些部件。目前它支持Intel Edison、Intel Joule 570x、NXP Pico i.MX6UL、NXP Argon i.MX6UL和Raspberry Pi 3,接下來還會繼續(xù)支持更多。認(rèn)證過的硬件將與谷歌提供的系統(tǒng)鏡像一起交付,包括未來的更新,也將在沒有開發(fā)人員介入的情況下自動交付。
Weave是由谷歌使用的物聯(lián)網(wǎng)設(shè)備之間的通信協(xié)議,它已經(jīng)被改進(jìn),可以直接訪問更多的云服務(wù),比如通過語音命令進(jìn)行設(shè)備控制的助理服務(wù)等。除了常見的智能燈泡、智能插座、智能開關(guān)和恒溫器等,谷歌還計劃增加其他類型的設(shè)備,包括支持客戶自定義的設(shè)備。一些制造商已經(jīng)宣布對Weave提供支持,他們分別是Belkin WeMo、First Alert、Honeywell、LiFX、TP-Link和Wink等。
分享到微信 ×
打開微信,點擊底部的“發(fā)現(xiàn)”,
使用“掃一掃”即可將網(wǎng)頁分享至朋友圈。