Application Network Bandwidth Report - flutter

I have an application that I have distribute on google play store. Can I check the average network bandwidth data of the application collected from the user? Average KB/s the application usually use?
What I have check but I cannot find such a report
Google Play Console
Firebase Console Performance Monitoring (There are network request data but it is to detail per session per request)
So far I think I can utilize the Firebase data or doing some manual measurement on my device myself, but I think it is inefficient and not accurate enough.
Any idea where can I got report like that in google play console or firebase? Or any other SDK or solution I can use to get network bandwidth report?
For information I use flutter to develop the application.

Related

Continuous update UI from Service

I'd be very grateful if somebody can help me. (I'm absolute beginer with Android).
There's a lot of code in the web, but I couldn't find anything suitable for my application.
I've an installation with some sensors connected to Arduino. All input data are collected in a String, and this String is sent via Bluetooth to an Android device every 1~2 seconds (depending on data availability from sensors). Is to be used for hours.
I made an App that receives the data (via Bluetooth) and shows all data in real time update in one layout, with the Bluetooth code in the MainActivity. Works well.
What I need is an App with three different Activities, all using the same String data from Bluetooth, and real time updated.
My question is how to build the App:
-Bluetooth running in a Service, and Activities connected to it?
-Which is a good way for real time update in any of the three Activities?
A similar example could be a weather station, an Android device receiving data via Bluetooth, showing the same weather data in three different layouts, with continous update.
Thanks in advance

Flutter MiBand services

I'm trying to read data from Xiaomi MiBand 5 with Flutter app.
So far I've managed to connect to band and read heart rate.
I found which service and UUID is responsible for heart rate and now I'm trying to find which services are responsible for other values.
After discovering all services, it seems that there are 12 of them :
1800, 1801, 180a, 1530, 1811, 1802, 180d, fee0, fee1, 180f, 1812, 3802
180d is responsible for heart rate and I managed to read data from it.
But how can I read steps count?
The list of Bluetooth SIG adopted services are available at:
https://www.bluetooth.com/specifications/gatt/services/
I suspect some of those are custom services. The Bluetooth Base UUID is
0000xxxx-0000-1000-8000-00805F9B34FB
Examples include:
0x180F -> Battery Service UUID (128-bit UUID: 0000180F-0000-1000-8000-00805F9B34FB)
If the value doesn't follow the base UUID then it will be a custom service.
There are some generic scanning and exploration tools to explore the services being provided by devices.
On mobile phones, the nRF Connect app is a good choice:
https://www.nordicsemi.com/Software-and-tools/Development-Tools/nRF-Connect-for-mobile
On desktops machines, if you have a recent version of the Chrome browser then use the url chrome://bluetooth-internals/#devices to scan and inspect devices.

How can I get real-time heart rate data in a progressive web app for phones?

I'm building a progressive web application (target is smart phones for now). The app needs to be able to access heart rate and heart rate variability, ideally in real-time. While it seems totally asinine, I'm open to using REST calls to some remote server if that is the only way. I'm also fine with restricting the app to only work with certain hardware if necessary. In this case, the ideal hardware would be some sort of earbud that uses optics to scan for heart rate, but at this point, I'm open...
The best that I have thought up is to find a heart rate monitor that converts the direct signal into audio and use the microphone web API. That seems like a lot more work than ideal, so I'm hoping someone has a better idea. Any ideas are welcome. Please, no one downvote anyone if it doesn't solve all my constraints. I've been working on this for a bit and I'm not sure that there is a clean and perfect solution yet. Thanks in advance!
If the sensor can speak Bluetooth, the Web Bluetooth API can perhaps help: https://developer.mozilla.org/en-US/docs/Web/API/Web_Bluetooth_API
https://developers.google.com/web/updates/2015/07/interact-with-ble-devices-on-the-web
How about use a Web Bluetooth that lets you control any Bluetooth Low Energy device like heart rate monitors. It will read the Service Location Characteristics (which tells your where the sensor is placed - which body part) and subscribe to notifications from the Heart Rate Characteristics, meaning you will get an event whenever the device performs a new measurement. Then use a service worker that will define the behavior of the app to mimic native app capabilities like offline support and notifications.
It's like a Physical Web that you can send a link to your website from a Bluetooth beacon to a user's device and with PWA, that link can be to your web app that looks, feels and functions like a native app. Then with Web Bluetooth, you can then speack to the device. Visit this blog post for more details.

How can I connect a golo4 obd2 device with IBM IoT platform without using a mobile application?

I'm using IBM Bluemix Services to develop a real time application. While developing the application I need to analyse the device data (Golo4 obd2 device) on the IoT platform. Please guide me to the step-by-step information regarding the connection of the device.
I don't have one of those devices but from a quick google it seems the only way to connect it to the web is via a mobile app they provide. Perhaps you can ask the manufacture or check the instruction manual? There is no way to analyze the data in bluemix if you can't get it from the car to bluemix. It is a common architecture for this to be via a phone (bluetooth to the phone and then wifi or mobile network to the WWW). Which is why it becomes important to consider the impact on the phone's battery life and the cost to the user of the amount of data transferred and minimize both.

How & where to set up DB Server and communicate with iPhone

I'm working on iPhone app that will let users upload/download photos to/from a DB server along with some data associated with each photo.
While I do have experience with iPhone programing, I do not have much experience with DB and server side programing.
Does anyone have any tips on what would be the easiest way to set up DB server and handle requests and responses coming from the iPhone. This server may be potentially required to handle large amount of traffic and preserve data integrity. Several iPhone users might be attempting to upload and modify data associated with each photo at the same time.
I'm thinking of opening a hosted server account so I don't have to purchase hardware and run it from home. Any tips on a company that provides quality and affordable server and DB hosting would be much appreciated.
If you know some Python or Java, you could take a look at Google AppEngine.
It is designed to scale and the entry costs are very low (i.e. free).
You do not have to worry about any infrastructure hosting as it is all provided for you.
The only catch is that it is:
Harder to get data out of the platform if you decided to move off it to another system
Does not support push notifications (However there are a lot of push notification providers out there you can hire)