Boldog új évet és ... jó egészséget a Google Fit segítségével !

Sportalkalmazás és belső konferencia fejlesztésének követése. Rájöttem, hogy a Google Fit API-k nagyrészt ismeretlenek a fejlesztői közösség számára. Mit lehet tenni a Google Fit szolgáltatással? Mi az értelme ? Tényleg hasznos? Annyi kérdés, amelyre ebben a cikkben talál választ.
A Google Fit szolgáltatással a Google Fitness Store ” az egészséggel kapcsolatos adatok tárolása és központosítása érdekében. A cél egyfajta szabvány létrehozása annak érdekében, hogy az alkalmazások között könnyen cserélhető legyen az adat. Ezért a fizikai aktivitással, az étrenddel és bizonyos orvosi adatokkal kapcsolatos minden típusú adatot tárolhat. A Google Fit elérhető Androidon, de közvetlenül az internetről is, ezért a Google kétféle API-t kínál: a REST és az Android.

Ez a cikk azokra az Android-eszközökre fog összpontosítani, amelyek az internetre készültek ugyanolyan teljesek.

évet

1.1 Családi történet

A Google Fit hét API-családon keresztül érhető el, az 1. ábra szerint:

  • HistoryApi: A „Fitness Store”(pl .: beillesztések, törlések, frissítések). [Lásd 3.1, 3.2].
  • RecordingApi: Lehetővé teszi, hogy feliratkozjon egyfajta adatra (pl. A felhasználó lépéseinek száma), hogy változás esetén értesítést kapjon.
  • SensorApi: Lehetővé teszi a nyers adatok beolvasását egy érzékelőből.
  • SessionApi: A munkamenetek kezelésére szolgál [lásd 3.3, 3.4].
  • BLE Api: Kommunikációra használják hordható eszközök és más bluetooth eszközök. Ezután átirányíthat a SensorApi-hoz adatgyűjtés céljából.
  • ConfigApi: Lehetővé teszi a létrehozást adattípusok személyre szabott [lásd 2.2].
  • GoalsApi: Hozzáférést biztosít a felhasználó céljaihoz, valamint azok teljesítési arányához. Háromféle cél létezik: időtartam, távolság, kalóriaszám.

1.2 Kérjen engedélyt !

A Google Fit kezeli a bizalmas adatokat, ezért az API-k teljes körű használata előtt engedélyt kell kérnie a felhasználótól.

Ehhez át kell mennie egy GoogleApiClienten, amelyhez megadja a használni kívánt API-kat, valamint azok hatókörök (jogok) társítva.

amelynek a következő párbeszédet kell eredményeznie a felhasználó számára:

Ne feledje, hogy a felhasználó nem tagadhatja meg bizonyos típusú adatokhoz való hozzáférést, például az alkalmazásengedélyekkel. Itt kivétel nélkül engedélyeznie kell az összes "Fitness" adatához való hozzáférést. Az Apple HealthKit lehetővé teszi például bizonyos típusú adatokhoz (életkor, nem, stb.) Való hozzáférés korlátozását, mások elfogadása mellett.

2.1 - Tárgyak

A Google Fitneszen belül, függetlenül attól, hogy ételt, fizikai gyakorlatokat vagy másokat szeretne beilleszteni, a következő hat tárgyat fogja használni:

  • Adattípus
  • Adatforrás
  • Adatpont
  • DataSet
  • Ülés

2.2 DataType és DataSource

Az adattípust általában egy adatforrás felépítéséhez használják.

A Google Fit számos alapértelmezett adattípust biztosít az adatforrások létrehozásához és a " Fitness Store ” a felhasználó. 5 kategóriába vannak csoportosítva. Sporttevékenységgel kapcsolatos adatok ( Tevékenység ), egy pozícióhoz kapcsolódó adatok ( Bérlés ), fizikai állapotra vonatkozó adatok ( Test ) és végül az élelmiszerekkel kapcsolatos adatok ( Táplálás ). A következő táblázatban soroljuk fel őket:

ellenállás típusa (int-enum)

Bizonyos, HealthDataType nevű típusok azonban tiltva lesznek, mielőtt regisztrálna a Google-nál (ezt a [email protected] címen igényelheti). Ezeket az adatokat túl érzékenynek tekintik ahhoz, hogy alapértelmezés szerint hozzáférhessenek hozzájuk.

Ezenkívül, ha kiegészítő eszközt használ az ilyen típusú adatok gyűjtésére, meg kell adnia az eszköz modelljét, az általuk tiszteletben tartott protokollokat (pl .: ISO15197) és azokat az adatokat, amelyeket a Google-lal kíván gyűjteni.

Az alábbiakban felsoroljuk az érzékenynek ítélt adatok listáját:

Ha ennek ellenére ezek az adatok nem felelnek meg Önnek, a Google lehetőséget ad arra, hogy létrehozza sajátjait, és nyilvános, privát, megosztható, korlátozott láthatóságot biztosítson számára. Ez a helyzet a Nike-val és az Adidas-szal, amelyek mindketten saját típusú adatokat hoztak létre.

2.3 Adatkészlet és DataPoint

Az adatkészlet mindig példányos adatforrás segítségével történik. Az adatkészlet több adatpontot tartalmaz, amelyek a nyers adatokat reprezentálják egy pillanat alatt. Vegyünk egy példát a beszédünk tisztázása érdekében:

Camille úgy dönt, hogy vasárnap reggel egy órát kocog. Nemrégiben folytatta a sportot, nem tudja teljesen befejezni a kocogást. Az első 30 percet futotta, majd 10 percet sétált pihenni, és a hátralévő 20 percet folytatta.

Most próbáljuk meg lefordítani ezt a fizikai tevékenységet a korábban leírt tárgyakkal. Először ki kell választania, hogy mit szeretne menteni a Fitness Store ” . A 2.2 táblázat 1. táblázatára hivatkozva úgy döntünk, hogy rögzítjük Camille sebességét, valamint az általa végzett tevékenységet. Első példányos adatkészletet építünk az ACTIVITY_SEGMENT adattípus adatforrásából (mindig a 2.2 oszlop 4. oszlopában található táblázatra hivatkozva).

Ezután beszúrunk három adatpontot, amelyek megfelelnek Camille kocogásának három szakaszának (futás, majd járás, majd futás). Felhívjuk figyelmét, hogy mivel egy ACTIVITY_SEGMENT adatforrást választottunk, az adatpont mezőknek meg kell felelniük a 2.2. Pont 1. táblázatában megadottaknak, a kiválasztott adattípustól függően. Itt a FIELD_ACTIVITY lesz, amint azt a 3. oszlop jelzi.


Ugyanígy létrehozhatunk egy második adatkészletet egy TYPE_SPEED adattípusú adatforrásból, amely megköveteli, hogy ezúttal három adatpontot illesszünk be a FIELD_SPEED mezőkbe. .

A 4. ábra ezt a példát javasolja grafikusan összefoglalni:

Megjegyezzük, hogy az adatforrás megválasztásával egyfajta szerződést kötünk, amely arra kötelez minket, hogy az adatpontok adatait az adatforrás adattípusának megfelelő mezőkkel adjuk meg (lásd a 2.2. Táblázatot). Ezért azt mondhatjuk, hogy egy adatkészlet több azonos "típusú" adatpontot csoportosít. Ezért vannak olyan munkamenetek, amelyek több különböző típusú adathalmazot fognak össze.

A beszúrás befejezéséhez a HistoryAPI-t használjuk:

Az előző példában sportadatokat illesztettünk be, de a forgatókönyv megegyezik az étellel vagy az egészséggel kapcsolatos adatokkal (alvás, magasság, súly stb.). Ne feledje, hogy az adattípus leírja az elvégzendő adatpontok felépítését.

Adatok beillesztéséhez szükséged van egy adatforrásra, amely meghatározza a csomag nevét, mert egy alkalmazás csak azokhoz az adatokhoz férhet hozzá, amelyeket saját maga illesztett be a „Fitness Store” -ba (különös eset a RecordingApi lépéseinek száma és a GoalsApi céljai). Ne feledje, hogy egy adatpont beszúrásához ki kell töltenie a DataType összes mezőjét, amelyet kiválasztott.

3.2 Adatok olvasása

Camille kocogásának adatainak kiolvasásához a következő lekérdezést használjuk:

Adatok törléséhez vagy frissítéséhez az elv ugyanaz marad, de a DataDeleteRequest és DataUpdateRequest objektumokat kell használnia .

Emlékezni:

  • Minden adatpont mezőt ki kell tölteni
  • Használja a HistoryApi.updateData fájlt, ha két átfedő adatpontot szúr be, különben a beillesztési kérelem figyelmen kívül marad.
  • Nem módosíthatja egy másik alkalmazás által beillesztett adatokat.
  • Nem törölheti a másik alkalmazás által beillesztett adatokat.
  • 1000 DataPointra korlátozott lekérdezések
  • Ezután az adatok munkamenetekbe foglalhatók.

3.3 Beszúrás beillesztése

Mint korábban említettük, lehet munkameneteket létrehozni, a SessionApi-t kell használnunk.

A Google jelenleg 124 sporttevékenységet kínál az Ön foglalkozásaihoz.

A munkamenetek az adatkészletek csoportosítását jelentik, Camille példája szerint a munkamenet RUNNING típusú lenne. Bár sétált, kezdetben ez még mindig egy kocogás volt a számára. Ezért ügyeljen arra, hogy ne keverje össze az adatponthoz és a munkamenethez rendelt tevékenységet.

Pontosabban kétféleképpen lehet munkamenetet beilleszteni, akár közvetlenül kézi beillesztéssel.

Vagy felvétel indításával.

Rekord elindításával a Google Fit maga gyűjti az adatpontokat, és beszúrja azokat a Fitness Store ” . Kényelmes !

3.4 Olvassa el a Munkamenetet

További szép dolog a Google Fit API-kban, hogy a Google automatikusan becsüli a felhasználó elégetett kalóriáit az elvégzett fizikai aktivitás alapján, ha üresen hagyja őket.

A Google Fit egy átfogó platformot kínál, amely a sport-, egészség- és ételadatokat egy helyre gyűjti, hogy központosított és összetartó környezetet biztosítson a felhasználó számára a jobb élmény érdekében.

A Google azonban arra figyelmeztet, hogy a Google Fit használatának egyértelműnek kell lennie a felhasználó számára, így mindig meg kell magyarázni, és arra is figyelmeztet, hogy a Google Fit nem használható kereskedelmi célokra vagy a fentiektől eltérő adatokra. Végül, ha a platform által biztosított adattípusok nem felelnek meg Önnek, akkor mindig létrehozhat saját. Emlékeztetőül: ez a Nike és az Adidas esete.

Idővel a Google Fit folyamatosan fejlődik, és mostantól lehetővé teszi a következőket:

  • A tevékenység kezdetének automatikus felismerése
  • Értesítés arról, ha bizonyos adatok megérkeznek a „Fitness áruházba”, ezáltal lehetővé téve a következetes felhasználói élmények kialakítását (azaz: Bátorítsa a felhasználót, hogy étkezés után végezzen tevékenységet túl sok kalóriával, Ösztönözze a felhasználót, hogy igyon hosszú edzés után, ... )
  • Növelje a felhasználók egyesülését az alkalmazásával kapcsolatban: itt azt értem, hogy sportolóként mindig inkább egy olyan alkalmazást preferálok, amely kompatibilis lesz a Google Fit szolgáltatással, és amely gazdagíthatja a meglévő ökoszisztémámat, mint egy elszigetelt alkalmazás.

Ezeket az API-kat ismerni kell, és az Android Wearbe történő integrálásuk nagyszerű kilátásokat nyit meg.