Snap for 5698755 from 5befbf783044d0674d2dae80ba4e3a6529d70024 to qt-c2f2-release

Change-Id: Id56257ec2d11e1983069b37fdc8778e53ad1ad8c
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 9dd32c2..71648e8 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -486,9 +486,7 @@
             </intent-filter>
         </receiver>
         <service
-            android:name=".service.EmailBroadcastProcessorService"
-            android:permission="android.permission.BIND_JOB_SERVICE"
-            android:exported="true" />
+            android:name=".service.EmailBroadcastProcessorService" />
 
         <!-- Support for DeviceAdmin / DevicePolicyManager.  See SecurityPolicy class for impl. -->
         <receiver
@@ -727,7 +725,6 @@
         </service>
 
         <service android:name="com.android.email.EmailIntentService"
-                 android:permission="android.permission.BIND_JOB_SERVICE"
                  android:exported="false">
             <intent-filter>
                 <action android:name="com.android.mail.action.RESEND_NOTIFICATIONS" />
diff --git a/provider_src/com/android/email/EmailIntentService.java b/provider_src/com/android/email/EmailIntentService.java
index 5924c90..0c6d761 100644
--- a/provider_src/com/android/email/EmailIntentService.java
+++ b/provider_src/com/android/email/EmailIntentService.java
@@ -29,12 +29,12 @@
     private static final String LOG_TAG = LogTag.getLogTag();
 
     public EmailIntentService() {
-        super();
+        super("EmailIntentService");
     }
 
     @Override
-    protected void onHandleWork(final Intent intent) {
-        super.onHandleWork(intent);
+    protected void onHandleIntent(final Intent intent) {
+        super.onHandleIntent(intent);
 
         if (UIProvider.ACTION_UPDATE_NOTIFICATION.equals(intent.getAction())) {
             final NotificationController nc =
diff --git a/provider_src/com/android/email/service/EmailBroadcastProcessorService.java b/provider_src/com/android/email/service/EmailBroadcastProcessorService.java
index 5d264f0..7aa5467 100644
--- a/provider_src/com/android/email/service/EmailBroadcastProcessorService.java
+++ b/provider_src/com/android/email/service/EmailBroadcastProcessorService.java
@@ -17,6 +17,7 @@
 package com.android.email.service;
 
 import android.accounts.AccountManager;
+import android.app.IntentService;
 import android.content.ComponentName;
 import android.content.ContentResolver;
 import android.content.ContentUris;
@@ -33,8 +34,6 @@
 import android.text.TextUtils;
 import android.text.format.DateUtils;
 
-import androidx.core.app.JobIntentService;
-
 import com.android.email.EmailIntentService;
 import com.android.email.Preferences;
 import com.android.email.R;
@@ -70,9 +69,7 @@
  * This also handles the DeviceAdminReceiver in SecurityPolicy, because it is also
  * a BroadcastReceiver and requires the same processing semantics.
  */
-public class EmailBroadcastProcessorService extends JobIntentService {
-    public static final int JOB_ID = 200;
-
+public class EmailBroadcastProcessorService extends IntentService {
     // Action used for BroadcastReceiver entry point
     private static final String ACTION_BROADCAST = "broadcast_receiver";
 
@@ -84,11 +81,11 @@
     private static final String ACTION_UPGRADE_BROADCAST = "upgrade_broadcast_receiver";
 
     public EmailBroadcastProcessorService() {
-        super();
-    }
+        // Class name will be the thread name.
+        super(EmailBroadcastProcessorService.class.getName());
 
-    public static void enqueueWork(Context context, Intent work) {
-        enqueueWork(context, EmailBroadcastProcessorService.class, JOB_ID, work);
+        // Intent should be redelivered if the process gets killed before completing the job.
+        setIntentRedelivery(true);
     }
 
     /**
@@ -98,13 +95,13 @@
         Intent i = new Intent(context, EmailBroadcastProcessorService.class);
         i.setAction(ACTION_BROADCAST);
         i.putExtra(Intent.EXTRA_INTENT, broadcastIntent);
-        EmailBroadcastProcessorService.enqueueWork(context, i);
+        context.startService(i);
     }
 
     public static void processUpgradeBroadcastIntent(final Context context) {
         final Intent i = new Intent(context, EmailBroadcastProcessorService.class);
         i.setAction(ACTION_UPGRADE_BROADCAST);
-        EmailBroadcastProcessorService.enqueueWork(context, i);
+        context.startService(i);
     }
 
     /**
@@ -116,11 +113,11 @@
         Intent i = new Intent(context, EmailBroadcastProcessorService.class);
         i.setAction(ACTION_DEVICE_POLICY_ADMIN);
         i.putExtra(EXTRA_DEVICE_POLICY_ADMIN, message);
-        EmailBroadcastProcessorService.enqueueWork(context, i);
+        context.startService(i);
     }
 
     @Override
-    protected void onHandleWork(Intent intent) {
+    protected void onHandleIntent(Intent intent) {
         // This method is called on a worker thread.
 
         // Dispatch from entry point