Show foreground notification for jobs when network is restricted.

Occasionally a job may be run when the app is in a network-restricted
mode, like a form of doze. When this happens, jobs can timeout due to
lack of network access, causing a cascade of job delays. This is
particularly bad in the case of message retrieval.

To prevent this, if a job that normally requires network detects that no
network is available when running, then we start a foreground
notification.
This commit is contained in:
Greyson Parrelli
2018-10-03 09:42:35 -07:00
parent c86c2c51bb
commit e4b56d4e40
5 changed files with 57 additions and 2 deletions

View File

@@ -371,6 +371,9 @@
<string name="InviteActivity_no_app_to_share_to">It looks like you don\'t have any apps to share to.</string>
<string name="InviteActivity_friends_dont_let_friends_text_unencrypted">Friends don\'t let friends chat unencrypted.</string>
<!-- Job -->
<string name="Job_working_in_the_background">Working in the background...</string>
<!-- MessageDetailsRecipient -->
<string name="MessageDetailsRecipient_failed_to_send">Failed to send</string>
<string name="MessageDetailsRecipient_new_safety_number">New safety number</string>
@@ -477,6 +480,9 @@
<!-- PlayServicesProblemFragment -->
<string name="PlayServicesProblemFragment_the_version_of_google_play_services_you_have_installed_is_not_functioning">The version of Google Play Services you have installed is not functioning correctly. Please reinstall Google Play Services and try again.</string>
<!-- PushNotificationReceiveJob -->
<string name="PushNotificationReceiveJob_retrieving_a_message">Retrieving a message...</string>
<!-- RatingManager -->
<string name="RatingManager_rate_this_app">Rate this app</string>
<string name="RatingManager_if_you_enjoy_using_this_app_please_take_a_moment">If you enjoy using this app, please take a moment to help us by rating it.</string>
@@ -556,6 +562,9 @@
<string name="SearchFragment_header_contacts">Contacts</string>
<string name="SearchFragment_header_messages">Messages</string>
<!-- SendJob -->
<string name="SendJob_sending_a_message">Sending a message...</string>
<!-- SharedContactDetailsActivity -->
<string name="SharedContactDetailsActivity_add_to_contacts">Add to Contacts</string>
<string name="SharedContactDetailsActivity_invite_to_signal">Invite to Signal</string>