1. I don't see any examples for foreign key constraints (ON DELETE and ON UPDATE) or UNIQUE constraints. Are constraints still supported?
2. How is row-level privacy implemented? Are "forbidden" rows not synced by the server logic, or are they encrypted?
1. Good point, we are going to publish more details about constraints in the repo within a few days
2. We have implemented row-level security, so you are free to easily implement any privacy role you want: https://docs.sqlitecloud.io/docs/rls. The "forbidden" rows are not synced
About encryption: all communications are over TLS.
I'm integrating daily steps walked into my workout/nutrition tracking app EverBeat for Android. I've noticed that this is an important metric for many people interested in losing some weight.
I estimate burned calories on the minute-to-minute level for all activities, which is a fun challenge.
For the steps to calories conversion, I require time and distance walked. Unfortunately it's surprisingly difficult to get some kind of distance information from Android. Google Fit API provides this data, but will be killed soon. The RecordingAPI will hopefully provide this in the future, but not yet...
For anyone else who doesn't know, Pieter Levels is a gifted solo entrepreneur that likes to build in public (to some extent). He is an inspiration glitter bomb. He has an open and honest attitude that really makes him relatable and I believe everyone can find inspiration in his content, no matter the field.
> It's more secure and allows a wider more diverse suite of apps to integrate into it.
It's more secure, yes. But since the data stays on the device now, web apps cannot read or write health data anymore. You need to develop a dedicated app to access the data on the device. And the user has to interact with the app, or the data will not be accessible.
E.g. my Withings scale writes my body weight to Google Health Connect. But I need to open the Withings app every time for that to work. The app-developers cannot do this in the background afaik.
(The data flow is: scale -> cloud -> app -> Google Health Connect.)
Another issue I see is: There is no incentive for app developers to write data to Google Health Connect.
Even if you subscribe to the idea of using it as your data-store, you will lose access to the data if a user uninstalls your app. It's only possible to read data up to 30 days in the past, or however long the user has installed your app – hopefully they don't decide to reinstall it.
I really appreciate the inter-connectivity Google Health Connect allows between apps, though.
>E.g. my Withings scale writes my body weight to Google Health Connect. But I need to open the Withings app every time for that to work. The app-developers cannot do this in the background afaik. (The data flow is: scale -> cloud -> app -> Google Health Connect.)
I have a Renpho scale, the way it works for me is that when I step on the scale it turns it on and connects to my device via bluetooth which wakes the app. The weight is captured and synced in the background to both the Renpho cloud service as well as the local Health Connect.
>There is no incentive for app developers to write data to Google Health Connect.
Again this is currently an app by app basis, they get a lot of write storage to health connect for free from the API:
> Even if you subscribe to the idea of using it as your data-store, you will lose access to the data if a user uninstalls your app. It's only possible to read data up to 3 month in the past, or however long the user has installed your app – hopefully they don't decide to reinstall it.
As I understand it the access is 30 days prior to the first permission given.
" Health Connect allows your app to read records with time or startTime for up to 30 days before your app's first successful permission request. If your app is uninstalled and then re-installed, the date is reset which marks as your new starting date as if you use the app for the first time. There are no restrictions on the data you share with Health Connect, however avoid writing large amounts of historical data at this time. Similarly, avoid writing data associated with future events such as a predicted"
> I have a Renpho scale, the way it works for me is that when I step on the scale it turns it on and connects to my device via bluetooth which wakes the app. The weight is captured and synced in the background to both the Renpho cloud service as well as the local Health Connect.
I bought a Wifi scale specifically so I don't have to have my phone with bluetooth on, nearby. Does the BT-connection open the app itself, or just initiate a sync in a background service?
I was under the impression that it is impossible to access Google Health Connect in the background – I get access-errors in my log when I start my own app from the IDE while the screen is off.
> [...] they get a lot of write storage to health connect for free from the API
Is this really an issue that is solved by using Google Health Connect?
> As I understand it the access is 30 days prior to the first permission given.
You are right, I edited my original post accordingly.
>I bought a Wifi scale specifically so I don't have to have my phone with bluetooth on, nearby.
Our has that option, but as multiple people in the house used the scale, having a phone on hand (which we do anyway) streamlines the process versus having to identify the user weighing.. user preference really.
>Does the BT-connection open the app itself, or just initiate a sync in a background service?
Background service as best as I can tell. I rarely, if ever, open the app in foreground and the weight is captured.
Titan looks similar to the workout app that I'm developing: EverBeat!
I'm also developing it for myself right now, that's why it is Android only atm.
My goal is to employ subtle gamification to get the user/me to the gym more often.
I was wondering where you got the data from to know what muscle group is used in each exercise?