There's a new update to Google Fit rolling out to [aspiring to be] healthy Android users, but there aren't any obvious signs of changes from just looking at the app. A little digging around under the hood reveals quite a bit is either in the works or just about to launch, including hydration logging and counting reps at the gym. We might also get to track climbing data soon and get notifications for activities that Fit isn't 100% confident about. Oh, and there are some more round icons because it was bound to happen eventually.

Teardown

Disclaimer: Teardowns are based on evidence found inside of apks (Android's application package) and are necessarily speculative and usually based on incomplete information. It's possible that the guesses made here are totally and completely wrong. Even when predictions are correct, there is always a chance that plans could change or may be canceled entirely. Much like rumors, nothing is certain until it's officially announced and released.

The features discussed below are probably not live yet, or may only be live for a small percentage of users. Unless stated otherwise, don't expect to see these features if you install the apk.

Round Icon

logo_fit_round_fishfood_color_48logo_fit_round_dogfood_color_48logo_fit_round_bugfood_color_48logo_fit_round_launcher_color_48

In order: fishfood, dogfood, bugfood, and launcher.

At this point, almost all of Google's core apps have been given round icons for use on the Pixel Launcher, so now is the time for some of the others to get caught up. This time it's Google Fit with not one, not two, not even three... but four round icons representing each of Google's various stages of app development and testing: fishfood, dogfood, bugfood, and the standard launcher icon.

Sadly, these follow the trend of placing the standard app icon on a dinner plate. At least the development badges look sorta like little mini-dishes hanging off to the side.

Here's the catch, these icons aren't going to work on the Pixel Launcher yet. It seems to have slipped somebody's mind to add the roundIcon property to the manifest, which means Android doesn't actually know to look for them. No doubt this will be fixed in the next release.

Water, logged

In theory, our water consumption should measure in at about half our body weight in ounces every day. For example, a 180-pound (81 kg) person should have about 90 ounces (2.6 liters) daily. Keeping track of your progress throughout the day isn't that hard, but you'll want to record this data to see a picture of your habits over time, or maybe just to feel good about yourself for keeping up with a goal.

Google Fit technically supports water consumption already, but only through the use of the API, which means you have to install another app to make use of it. That's not a terrible thing, especially if the app helps you reach your goal through reminders or making a game out of it, but it might be unnecessary for some users. The Fit team sees this and is preparing to allow users to track their water intake right inside the Google Fit app.

Logging quantities of water is about as straightforward as it sounds. There will be a simple screen with a pair of up/down buttons to change the quantity (also supports keyboard entry) and a button to finalize the amount. It also looks like Google Fit may support setting a goal for a little bit of extra motivation.

Hydration strings

<string name="log_hydration_frag_title">How many bottles have you had today?</string>
<string name="log_hydration_title">Log water</string>

<string name="hydration_title">I will drink</string>
<string name="hydration_action">Drink</string>
<string name="hydration_desc">{volume} {unit} of water</string>
<string name="hydration_description">ounces each day</string>
<string name="hydration_quick_goal">Drink more water</string>
<string name="hydration_unit">{unit} of water</string>
<string name="hydration_unit_with_progress">{progress} {unit} of water</string>

<string name="ounces_plural">ounces</string>
<string name="ounces_singular">ounce</string>

<string name="preferences_volume_unit_ml_label">Milliliters</string>
<string name="preferences_volume_unit_oz_label">Ounces</string>
<string name="preferences_volume_unit_title">Hydration</string>

<string-array name="volume_unit_labels">
<item>@string/preferences_volume_unit_oz_label</item>
<item>@string/preferences_volume_unit_ml_label</item>
</string-array>

<activity android:name="com.google.android.apps.fitness.hydration.LogHydrationActivity" android:theme="@style/FitAppTheme" />

/res/drawable/hydration_button.xml
/res/layout/hydration_fragment.xml
/res/layout/new_goal_hydration_fragment.xml

At this time, there doesn't appear to be a graph or any kind of representation for water consumption; but that's probably on the to-do list.

Climbing goals

Goal tracking is a good way to motivate yourself to reach at least some consistent levels of activity every day or week. Google Fit already makes it easy to track common targets like how many steps you take, how long you're active each day, or how many runs you take in a week. A new, more unusual goal appears to be in the works: climbing.

<string name="goals_activity_climb">Climb</string>

Strictly speaking, this string could be interpreted in a couple of ways. It could be related to the specific act of climbing walls or stairs, or it may be for measuring how much your activity leads you to change your elevation. Both are possible, but the naming of the string and where it shows up have me leaning towards the latter.

Elevation changes aren't challenging metrics to get, most modern phones already include sensors capable of getting reasonably good estimates. Automatic tracking of elevation would be a pretty great feature because it can demonstrate the big difference between simply walking on flat ground and going up stairs or even a gradual hill several times a day.

Gym exercises

Almost every update to Google Fit includes some new activities, but this version suggests the developer team is hitting the gym to get more specific. A sizable list of exercises was added with this release and it's entirely made up of the types of things you're likely to measure in reps. There are 51 workouts here, which obviously isn't a comprehensive list, but most of your common (and some less common) activities are represented.

Exercise names

<string name="label_abdominal_crunch">Abdominal crunch</string>
<string name="label_arnold_press">Arnold press</string>
<string name="label_back_extension">Back extension</string>
<string name="label_bench_press">Bench press</string>
<string name="label_bent_over_row">Bent-over row</string>
<string name="label_bicep_curl">Bicep curl</string>
<string name="label_burpee">Burpee</string>
<string name="label_chest_fly">Chest fly</string>
<string name="label_chin_up">Chin-up</string>
<string name="label_clean">Clean</string>
<string name="label_clean_jerk">Clean and jerk</string>
<string name="label_deadlift">Deadlift</string>
<string name="label_decline_bench_press">Decline bench press</string>
<string name="label_dip">Dip</string>
<string name="label_dumbbell_tricep_extension">Dumbbell tricep extension</string>
<string name="label_exercise_none">Unknown Exercise</string>
<string name="label_exercise_select">(Exercise Type)</string>
<string name="label_front_raise">Front raise</string>
<string name="label_hang_clean">Hang clean</string>
<string name="label_hang_power_clean">Hang power clean</string>
<string name="label_high_knees_running_in_place">High knees running in place</string>
<string name="label_incline_bench_press">Incline bench press</string>
<string name="label_jumping_jacks">Jumping jacks</string>
<string name="label_kg">kg</string>
<string name="label_lb">lb</string>
<string name="label_leg_curl">Leg curl</string>
<string name="label_leg_extension">Leg extension</string>
<string name="label_leg_press">Leg press</string>
<string name="label_leg_raise">Leg raise</string>
<string name="label_lunge">Lunge</string>
<string name="label_overhead_press">Overhead press</string>
<string name="label_plank">Plank</string>
<string name="label_power_clean">Power clean</string>
<string name="label_pull_down">Pull-down</string>
<string name="label_pull_up">Pull-up</string>
<string name="label_push_up">Push-up</string>
<string name="label_rdl_deadlift">Romanian deadlift</string>
<string name="label_rear_lateral_raise">Rear lateral raise</string>
<string name="label_rear_lunge">Rear lunge</string>
<string name="label_row">Row</string>
<string name="label_russian_twist">Russian twist</string>
<string name="label_shoulder_fly">Shoulder fly</string>
<string name="label_shoulder_shrug">Shoulder shrug</string>
<string name="label_side_lunge">Side lunge</string>
<string name="label_side_plank">Side plank</string>
<string name="label_single_leg_deadlift">Single leg deadlift</string>
<string name="label_single_leg_hip_bridge">Single leg hip bridge</string>
<string name="label_sit_up">Sit-up</string>
<string name="label_squat">Squat</string>
<string name="label_standing_calf_raise">Standing calf raise</string>
<string name="label_step_up">Step up</string>
<string name="label_straight_leg_deadlift">Straight leg deadlift</string>
<string name="label_swing">Swing</string>
<string name="label_tricep_extension">Tricep extension</string>
<string name="label_unknown_exercise">(Unknown)</string>
<string name="label_upright_row">Upright row</string>

If you're working to build muscle, or even engaged in bodybuilding, it's incredibly valuable to be able to get specific about recording everything you're doing in the gym. Not only are you tracking progress, but goals are easier to set as performance improves. Google Fit wasn't great for counting gym workouts because it didn't include this level of granularity, but once these exercises can be recorded individually, the app will be much more usable in that realm.

Detected activity confirmations

Have you ever noticed a mysterious and altogether wrong entry appearing in Google Fit? Perhaps it thought you went for a bike ride when you were really just in the car? A couple new strings suggest Google Fit might try to be a little more careful and ask users if a questionable activity is actually happening or just a case of some confused sensors.

The query will show up as a notification with the type of activity as a title, and below it is a line asking if the activity should be added to Google Fit. Tapping it will probably launch the app with a specific screen or mode depending on the type of activity, and maybe even launch the live timer if it thinks you're not actually done yet.

<string name="afl_session_notification_title">{description} detected</string>
<string name="afl_session_notification_description">Add activity to Google Fit?</string>

Data Backup

The final item on the list is actually live already, but it's probably not going to be noticeable unless you're really looking for it. Google Fit now allows the backup of local data with Android 6.0 Marshmallow and above.

Okay, that probably requires a little more explanation. After all, the Google Fit API is already meant to sync across devices and the web, and that includes some of your personal information like age and weight. So what else is there to back up? There are still a few other app settings on your device that aren't part of the API, things like your preferred units of measure, notification settings, audio announcements, and a list of favorite activities. Basically almost everything in the Settings screen.

Backup of app data was strictly disabled in the previous version of Google Fit, but now it is enabled and backs up all data except the Google Cloud Messenger (GCM) settings, which are intended to be device-specific. Everything else should be able to travel from one device to another through Google Drive or copied with the adb backup command.

Application properties from AndroidManifest.xml

android:backupAgent="com.google.android.apps.fitness.backup.FitnessBackupAgent" android:fullBackupContent="@xml/backup_scheme"

backup_scheme.xml

<full-backup-content>
<exclude domain="sharedpref" path="gcm_settings.xml" />
</full-backup-content>

Download

The APK is signed by Google and upgrades your existing app. The cryptographic signature guarantees that the file is safe to install and was not tampered with in any way. Rather than wait for Google to push this download to your devices, which can take days, download and install it just like any other APK.

Version: 1.61.11

Google Fit - Fitness Tracking
Google Fit - Fitness Tracking