strooooke / quickfit Goto Github PK
View Code? Open in Web Editor NEWQuickFit is an Android app which lets you add preconfigured workouts to Google Fit with a single click.
License: Apache License 2.0
QuickFit is an Android app which lets you add preconfigured workouts to Google Fit with a single click.
License: Apache License 2.0
No concrete plans yet, but offering calendar integration would be nice.
Idea list:
https://github.com/JakeWharton/timber
No more debug logging in production!
part of #29
Includes replacing Loaders by LiveData.
Prereq for migrating away from ContentProvider.
User didn't find it by themself.
store listing & app
and take all the code working around StateListAnimation-deficiencies with them
As a list item, show:
Activity name
Duration
Actions: "Did it! (add to google fit)", "Edit"
Tighten up permissions for SyncService and AuthenticatorService properly
http://stackoverflow.com/questions/20492078/sync-adapter-service-exported-but-unprotected
...looks like it's offset by the systemwindowinset... grr
master-detail-pane for wide screen, 2 activities for non-wide screen
see #29
raise targetSdk to 23 again, dealing with permissions as necessary
(a) for the consistent styling
(b) for ease of use and to free us from the inheritance hierarchy
in settings, see https://developers.google.com/fit/android/disconnect
Registering a ContentObserver on the session uri would take care of the usual inserts, but can we get rid of the manual sync request after successfully resolving an unsuccessfull play api result?
Since play api connection happens in the syncadapter, the background error resolution gets used.
Bounce error resolution through a bound service, so that it can get dispatched to the activity, if that is in the foreground.
... and automatically mark them as done, canceling the reminder for them.
Problem: using https://developers.google.com/android/reference/com/google/android/gms/fitness/SessionsApi.html#registerForSessions(com.google.android.gms.common.api.GoogleApiClient,%20android.app.PendingIntent) allows only listening for sessions that got explicitely started, not for sessions inserted after the fact (like quickfit itself does it). Also, stuff like walking around as collected by the Google Fit app itself from sensor data does not get consolidated into a session.
No pre-scroll if recyclerview empty (better: if enough room for fab below recyclerview)
when switching between that and other tasks.
e.g. the "Just did it!" borderless button looks atrocious (wrong padding, no smallcaps)
local only with sqlite; keep in mind that there will be scheduling and updates on completition of scheduled workouts from an external datasource, so no caching. Try cursors.
(e.g. add schedule items on API level 22 tablet emulator).
Probable cause: ItemDecoration decides whether to draw in terms of recyclerview child view position, but should decide in terms of adapter position.
Also, onDraw
instead of drawOver
after all...
Best observed on ScheduleActivity when adding a schedule.
As soon as the resolution for https://code.google.com/p/android/issues/detail?id=74772#c42 hits the support library, layout_height="wrap_content" for the recyclerview should work.
Then
a) AppBarLayout.Behavior should get the correct height for the recyclerview and accurately deduce that there is no need to scroll in onStartNestedScroll. Alternatively, EmptyRecyclerView could override its scroll event dispatching.
b) FabScrollingBehavior can do something similar to AppBarLayout.Behavior with the correct height of the recyclerview. Should hide only if top(fab) > bottom(recyclerview) after displacement of the recyclerview by the appbarlayout.
Review proper logging levels
For non-wide only:
main fab -> schedule fab
list item -> schedule coordinatorlayout or recyclerview
appbar -> appbar
Concerns:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.