Trots att de tillkännagavs vid Google I / O-konferensen 2015, är Brillo och Weave två nya teknologier från Google som fortfarande är lite av ett mysterium för allmän utvecklare. Lyckligtvis kasta Google lite mer ljus på båda dessa tekniker under Ubiquity-konferensen i januari 2016. I den här artikeln ger jag en översikt över Brillo and Weave för att hjälpa dig att bli bekant med Googles senaste Internetprojekt.
Innan vi kan dyka in i Brillo och Weave har du förmodligen en mycket viktig fråga "Vad är Brillo och Weave?"
Brillo är ett nytt operativsystem från Google som är utformat för att köras på IoT-enheter och inbyggda system. Brillo är baserad på Android-programvarupacken, men det är viktigt att notera att Brillo inte är Android. I huvudsak tog Google de lägre komponenterna i Android-operativsystemet, liksom vissa delar av Chrome OS, för att bygga ett nytt lätta operativsystem för IoT-enheter.
Weave är ett nytt kommunikationsprotokoll mellan enhet och enhet. Weave är aktiverat som standard i Brillo operativsystem och det är tillgängligt som ett bibliotek för andra mikrokontroller eller plattformar (Android, iOS, web). I samband med IoT-enheter används Weave för att skicka kommandon, uppdatera enheter och utföra inledande installation av nya enheter.
Även om Brillo är baserat på Android-programvarupacken, är det inte Android. För att hålla operativsystemet lätt, finns det inga kärnanvändningar eller tillämpningsramar (som Java-support). Runtime och inbyggda tjänster som bara finns på Android för att stödja program har också tagits bort.
Brillo tillhandahåller en uppsättning kärntjänster som hjälper utvecklare att förbättra sina enheter, inklusive inbyggt vävstöd, mätvärden, kraschrapportering och uppdateringar över luften. Brillo innehåller också flera funktioner som är centrerade kring säkerhet, eftersom det här är en av de viktigaste övervägandena när man utformar och bygger för saker på Internet.
Du kanske undrar hur du kan börja använda Brillo. För närvarande kan Brillo byggas från Android Open Source Project (AOSP) eller du kan begära en inbjudan till den aktuellt stängda betaversionen för att visa dokumentation och ladda ner den förbyggda Brillo Development Kit (BDK).
När du har BDK, kan du börja utveckla från en dator som kör Ubuntu 14.04 eller senare. Eftersom Brillo inte stöder JVM, är all utveckling gjord på C och C ++-språk.
Du behöver även hårdvara som stöder Brillo. De två prototyperna som nämnts och användes vid Ubiquity-konferensen är Dragon Board 410 och Intel Edison-styrelsen.
När du har en bild för din enhet byggd kan den blinkas på hårdvaran via snabbbåt och adb-verktygen. Särskilda uppgifter finns i den officiella Brillo-dokumentationen, som du hittar på Brillo beta-webbplatsen.
Det andra tillägget till Googles IoT-erbjudanden är Weave-protokollet. Som nämnts ovan, medan Brillo stöder Weave, är Weave inte exklusivt för Brillo operativsystem. Trots att Weave kan hantera många olika uppgifter är det vanliga att protokollet används för att kommunicera mellan enheter.
Weave kan användas för att upptäcka nya enheter och ställa in dem på ett nätverk, associera dem med ett Google-konto för autentisering eller helt enkelt skicka kommandon för att styra en enhet.
Även om Weave är aktiverat som standard i Brillo, kommer utvecklare att vilja använda det i andra applikationer. För att stödja detta har Google redan skapat Weave-bibliotek för iOS, Android, Java och Python så att dina webb- eller mobilappar enkelt kan kommunicera mellan enheter. Du kan begära tillgång till dessa bibliotek, liksom relaterad dokumentation, via Googles Weave-beta-program.
Med Dells Internet fortfarande i sin spädbarn, är Brillo operativsystem och Weave protokoll två välkomna verktyg som kommer att göra utvecklingen för den anslutna världen snabbare och enklare. Medan båda fortfarande är nya och i utveckling, är det som finns tillgängligt lovande och kommer bara att förbättras med tiden. Med tanke på den höga prognostiserade tillväxten av IoT-industrin är det en bra tid att börja lägga till dessa två avancerade teknologier till din repertoar.