Only a couple of hours ago, Play Services 10.0.83 was released by Google, which is currently available for download for only some devices. Download Google Play Services APK here. We opened up the the APK file of Play Services 10.0.83 to find some interesting new things, and have shared them below.
But here’s a gist. We think Google is adding a lot of functionality to Android devices via the Play Services app, which is becoming more and more central to Android security and added functionality.
What’s new in Play Services 10.0.83
Android Pay comes to Android Watches
<string name=”tp_wear_transaction_notification_text_full”>%1$s paid with %2$s</string>
<string name=”tp_wear_select_account_header”>”Choose account
<string name=”tp_wear_retap_prompt”>Try holding your watch to the terminal again</string>
<string name=”tp_wear_proxy_title”>Now finish setup on your phone</string>
<string name=”tp_wear_proxy_body”>Check your phone</string>
<string name=”tp_wear_keyguard_body”>Add a screen lock to use Android Pay more securely</string>
<string name=”tp_wear_add_account”>Add account</string>
<string name=”tp_wear_account_required_title”>Account Required</string>
<string name=”tp_wear_account_required_body”>To use Android Pay with %1$s, add that account to your phone.</string><string name=”tp_tokenization_success_on_wear_body”>%1$s %2$s has been added. Please check your watch.</string>
<string name=”tp_tokenization_success_header”>”You’re all set!“</string>
<string name=”tp_tokenization_success_complete_button”>Got it</string>
The above lines of code comes from Play Services 10.0.83, and if you pay attention to text above, you will see these dialog being added with new version, which seem related to (in order of bold text above):
- Making payment using the Android wear watch,
- Adding screen lock to make payments secure when using the watch,
- Need to add the account to phone (not necessarily an Android device),
- Confirmation that account has been added, and
- You’re ready to pay using the watch.
Location Sharing (Massive!)
<string name=”location_sharing_untargeted_update_shares_title”>Share your real-time location</string>
<string name=”locationsharing_content_description_sms”>Text message</string>
<string name=”locationsharing_content_description_email”>Email</string>
<string name=”location_sharing_unicorn_footer”>Check with a parent to change this info.</string>
<string name=”location_sharing_targeted_update_shares_title”>Share your real-time location with %1$s</string>
<string name=”location_sharing_targeted_update_shares_edit_title”>Change sharing duration with %1$s</string>
<string name=”location_sharing_stop_sharing”>Stop Sharing</string>
<string name=”location_sharing_share_via_link_message_persistent”>”This contact isn’t connected to a Google account. To share your real-time location, we will send a link.<br/><br/> People with this link will be able to see your location for up to %s.”</string>
<string name=”location_sharing_share_text”>”See me on Google Maps!”</string>
<string name=”location_sharing_remove_share_success_description”>Successfully removed share with %1$s</string>
<string name=”location_sharing_remove_link_share_description”>Remove link share that was %1$s</string>
<string name=”location_sharing_persistent_share”>Until you turn this off</string>
<string name=”location_sharing_people_share_item”>Select People</string>
<string name=”location_sharing_link_to_share”>Link to share</string>
<string name=”location_sharing_link_name”>Anyone with this link</string>
<string name=”location_sharing_link_created”>Link created</string>
<string name=”location_sharing_link_copied”>Link copied</string>
<string name=”location_sharing_increment_time_description”>Increase sharing duration</string>
<string name=”location_sharing_decrement_time_description”>Decrease sharing duration</string>
<string name=”location_sharing_expiration_destination”>Until you arrive at %s</string>
<string name=”location_sharing_create_journey_title”>Share location until you arrive</string>
<string name=”location_sharing_change_sharing_duration”>Change sharing duration</string>
<string name=”location_sharing_appinvite_recipients_hint_all”>Add names, email addresses, or phone numbers</string>
<string name=”location_settings_dialog_message_title_to_continue”>To continue, let your device turn on location using Google’s location service.</string>
Oh boy, we would love to see this addition in action. It seems you can allow real-time location sharing with contacts of your choice (friends, family, etc.) and Google has even provided some customization here: you can choose to share the location until you reach the destination. Awesome! You can add contacts by searching using their name, or simply phone number.
Further, you can select contacts to share location with, in real-time on continuous basis (until you stop sharing) or for specified duration, and can share the invitation to let your contact know via an email or SMS. Oh, you can even create a link, which can be used by anyone to track your location (so that you can share it in friends/family group chat), and of course, there is a dedicated option to disable that link later on. Note: If you think of using this exceptional feature, don’t forget to disable it later on when not needed.
Google even has a message set for this, which your contact will see: See me on Google Maps!. So, yes, the taping on the location will get your contact to Google Maps and check out your location in real-time. Your contact will need to have a Google account, and you keep an authority to disable the sharing anytime. You can even increase and decrease the sharing duration.
Though, if a parent set the location, the location sharing cannot be stopped by you. By parent, we think it means an IT administrator at company, or even the ability to make an Android device a parent device (parents can do this to children, and see when and where their child abroad makes travels).
Google would need permission to keep an eye on your location, even when none of the apps and services want it. Because, above.
Unmetered connection for System Updates
<string name=”system_update_update_downloaded_tap_to_install”>Tap to install</string>
<string name=”system_update_update_available_tap_to_download”>Tap to download</string>
<string name=”system_update_glif_unmetered_wifi_needed_title”>Unmetered WiFi network needed</string>
<string name=”system_update_glif_unmetered_wifi_needed_dialog_message”>”This update can be downloaded via unmetered WiFi only until ^1.
<string name=”system_update_downloading_unmetered_wifi_status2_text”>Via unmetered Wi-Fi only until ^1</string>
<string name=”system_update_downloading_required_update_text_unmetered_wifi_only”>This update is ^1. To continue the download, select an unmetered Wi‑Fi network.</string>
As Android 7.1 allows the system to download the update in background, Google has now added an option to set a connection as unmetered connection, which only will be used to download the seamless update. Nice, right?
Look at the bold text again, it seems you can specify until when (time?) an unmetered connection can be used to download the update. This is specially helpful when you have night downloaded available on your connection (even mobile data, that is), and that your device can notify you that you need an unmetered connection to download, and also, thus much (in MB/GB) of the update has been downloaded, and to continue, you need an unmetered connection.
So, yes the update download will be paused when unmetered connection is not available (or was enabled for download until specified (night) time only), and available for restore when allowed connection is available.
Smart Setup will enabled with lock screen security
<string name=”smartdevice_d2d_fingerprint_verification_text”>For security reasons, confirm your fingerprint. Your Google Accounts, apps, and data will be copied to your %s</string>
<string name=”smartdevice_d2d_fingerprint_skip_text”>Try lock screen instead</string>
<string name=”smartdevice_d2d_fingerprint_not_recognized_text”>Not recognized</string>
<string name=”smartdevice_alert_dm_backup_account_title”>Feature unavailable</string>
<string name=”smartdevice_alert_dm_backup_account_message”>”Unfortunately, you can’t use this feature because your backup account is managed by your device administrator.”</string>
When setting up new device, you are able to use Smart setup to directly — and very effortlessly — take your accounts and data from old Android device to newer one.
Now, your Android device could ask for authenticate via fingerprint sensor, which we think will be applicable if your old device was using fingerprint security. Also, transfer could be blocked with the backup account was being managed by device administrator, like in the case of companies where devices are controlled security-wise by the IT department.
Contacts Restore
<string name=”people_contacts_settings_progress_dialog_title”>Please wait</string>
<string name=”people_contacts_restore_title”>Restore contacts</string>
<string name=”people_contacts_restore_success”>Contacts restored</string>
<string name=”people_contacts_restore_ongoing_message”>Restoring…</string>
<string name=”people_contacts_restore_group_label”>Restored from</string>
<string name=”people_contacts_restore_dialog_title”>Choose contacts to restore</string>
<string name=”people_contacts_restore_dialog_restore_button”>RESTORE</string>
<string name=”people_contacts_restore_dialog_help”>LEARN MORE</string>
<string name=”people_contacts_restore_dialog_disclaimer”>Selected contacts will be copied to Google Contacts</string>
<string name=”people_contacts_device_section_title_no_backup”>No contacts are backed up to this account</string>
<string name=”people_contacts_device_section_title_has_backup”>Choose a device backup to restore</string>
Your Android device on Play Services 10.0.83 will allow you to choose device from which you want to restore your contacts, saved on your Google account supposedly. Also, it seems there is an option to transfer device contacts to Google account (is it really new?).
New features in Google Cast
<string name=”google_cast_app_name”>Google Cast</string>
<string name=”cast_settings_remote_control_notification_title”>Show remote control notifications</string>
<string name=”cast_settings_remote_control_notification_summary”>Access media controls through notifications when a cast device is playing media</string>
<string name=”cast_settings_notification_category_title”>Notification options</string>
<string name=”cast_rcn_unmute”>Unmute</string>
<string name=”cast_rcn_stop_live_stream”>Stop live stream</string>
<string name=”cast_rcn_stop_casting”>Stop casting</string>
<string name=”cast_rcn_settings”>Settings</string>
<string name=”cast_rcn_play”>Play</string>
<string name=”cast_rcn_pause”>Pause</string>
<string name=”cast_rcn_mute”>Mute</string>
Google cast gets the Remote Control Notifications (RCN). Using this, you will be able to pause, play, mute, unmute and stop casting or live stream pretty easily.
Advanced device authentication
<string name=”auth_factory_reset_protection_recent_password_change_toast”>Unable to sign in to device due to a recent password change. Please try to sign in again 24 hours after the password change was performed.</string>
<string name=”auth_get_token_bad_auth_work_service_account_message”>”This account couldn’t be accessed. Make sure that your device is following your organization’s security policies. If you keep seeing this error, contact your organization’s admin.”</string>
<string name=”auth_factory_reset_protection_wrong_account_toast”>”Please sign in using one of the owner’s accounts for this device”</string>
<string name=”auth_device_management_screenlock_skip_message”>This account requires screenlock security. Would you like to start over with a different account?</string>
<string name=”auth_device_management_screenlock_description”>Your admin requires you to setup device screenlock protection to access this account.</string>
This is for Factory reset protection, or work accounts, or even part of smart setup.
The device now specifically tells you to wait for 24 hours before trying to log in, after a password was changed within 24 hours of you trying to log in. It was already in existence, but now system tells you this clearly.
In case you didn’t know, after you change the password of your Google account, you cannot use the new password for device authentication purpose for next 24 hours. This is to prevent anybody from changing the password, and then log into any device using those credentials, or your own stolen device.
So, that was what we were able to find from the code inside the Google Play Services 10.0.83.
Thoughts?
Discussion