This also improves firmware/RES probing to distinguish Mi Band 2/3 firmware files and Mi Band 3/Bip RES files.
Notes:
- Firmware flashing should might but is untested
- This basicall runs off the Amazfit Bip code which will probably incorrect (Mi Band 3 is proabably something between the Bip and the Mi Band 2)
Automatically connect at boot if gadgetbridge is configured to start at
boot and to attempt an automatic connection when bluetooth is available
Fixes#693 and fixes#891
According to the documentation the current call state might be not correctly
contained in the extra, and using getCallState() is the right thing to do
Might help for #799 (and #756)
Since the device object (local to DCS) is set to null on disconnect, the
notification could not get updated from within the receiver. DeviceManager
does not have such issues.
The problem appeared with 3f421facab
This speeds up things up a lot. We should still somehow limit it, but not by waiting
after one PPoGATT ACK after each complete PP package.
This leaves the old mode untouched, so we have something to compare
Newer Cor and Bip firmwares seem to be indistinguishable,
What we do for now is use the version we already search for say
Bip firmwares are valid from 0.0.8.00 to < 1.0.5.00 (lastest as of today is 0.1.0.39)
Cor firmwares are valid from 1.0.5.00
This should work for a while.
Fixes#1095
This fixes notification text not displaying when a short vibration
pattern is set.
If the notification text is sent while the icon is still visible
it is not displayed. We need to wait until it disapears (about 4 seconds)
This basically makes sure that
- only one gatt write operation is in progress
- data is not sent from within callbacks to prevent a deadlock when waiting for a nre callback that cant happen yet beause the current has not been retuned
This will eliminate the need for the Phone being a GATT Server and might lead
to better connection stability once it is ready.
NOTE: Enabling this in the code (change clientOnly=true in PebbleLESupport)
will only work for a few packets before in totally breaks, so only enable
if you want to fix it :P
NOTE:
- You will have to be connected while doing the changes in preferences (FIXME)
- It might not work at all since I did not test after the latest changes :P
This change should turn travis green again.
Older version of android should get a proper 24h formatted timestamp.
Perhaps our export will be more compatible with external services as well
( #1076 )
Fix#1055 properly, as the previous change was not solving the issues
on API < 24. This affected the connection to some devices and caused a
crash on graph access.
Wind information are stored and put in the reconstructed OWM response.
A long standing bug (having the "name" field inside "main" instead of at
the root level of the json) has been fixed
Lineage OS receiver and if possible weather notification app receiver will
be added in further commits.
See #482
Show a datepicker to reset the date after which the next activity will be fetched.
Also add .gpx extension to fetched activity track (if present) and make
the menu entries translatable.
Close#1057
- stop refreshing state of swipe layout and refresh list after fetching
- allow fetching when device gets connected while being inside the activity
(#952)
This removes misuse of testNewFunctionality() and support fetching GPS data and debug logs
Fetching debug logs (Amazfit Bip/Cor) is now accessible in the debug activity
Fetching GPS data can be done by swiping in the list activity.
TODO: actually refresh list when fetching data is done :P
Also fix some android studio warnings on the go...
when receiving configuration data from the external browser.
Parse the passed data to load the correct watchface javascript, and ensure
the currently connected device is a Pebble (and try to reconnect if there
is no device connected, as a bonus)
What happens in reality is that devices are sorted according to their
connection status first, and then by name. So even if/when we support
multiple device connection, the order should remain sane.
This closes#842.
What we do now is:
- Send a notification with the app icon
- Send the vibration pattern right away (this causes the first unwanted
vibration to be cancelled immediately and only the pattern is noticable,
while the icon stays on screen during the vibration pattern)
- (optional) send the text together with a generic sms icon
This also fixes problems of text not appearing in newer firmwares when
a notification pattern with repeat has been set in Mi Band settings.
The way this works will never be a fully working solution, because uris are
*not supposed* to be resolved to a filesystem path. So while this may work
right now, it will most probably fail in the future, with other content providers.
See e.g. https://github.com/iPaulPro/aFileChooser/issues where this code originally came from
(via Stackoverflow).
We won't crash anymore, but we won't support certain content providers. In the long run, we
should search for the proper solution.
Closes#982