[automerger skipped] Import translations. DO NOT MERGE
am: e983b7a383 -s ours
am skip reason: subject contains skip directive

Change-Id: I1c575f6ecf663f1b356c52cd4ec44bacc518d309
diff --git a/Android.mk b/Android.mk
index 34d7cb4..9d0a90a 100644
--- a/Android.mk
+++ b/Android.mk
@@ -26,6 +26,8 @@
 
 LOCAL_PACKAGE_NAME := Gallery2
 
+LOCAL_PRODUCT_MODULE := true
+
 LOCAL_OVERRIDES_PACKAGES := Gallery Gallery3D GalleryNew3D
 
 LOCAL_SDK_VERSION := current
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 0263e6d..43439f9 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -7,7 +7,7 @@
 
     <original-package android:name="com.android.gallery3d" />
 
-    <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="24" />
+    <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="28" />
 
     <permission android:name="com.android.gallery3d.permission.GALLERY_PROVIDER"
             android:protectionLevel="signatureOrSystem" />
@@ -324,7 +324,9 @@
                 <data android:scheme="package"/>
             </intent-filter>
         </receiver>
-        <service android:name="com.android.gallery3d.app.PackagesMonitor$AsyncService"/>
+        <service android:name="com.android.gallery3d.app.PackagesMonitor$AsyncService"
+                 android:permission="android.permission.BIND_JOB_SERVICE"
+                 android:exported="true"/>
         <service android:name="com.android.gallery3d.gadget.WidgetService"
                 android:permission="android.permission.BIND_REMOTEVIEWS"/>
         <activity android:name="com.android.gallery3d.gadget.WidgetConfigure"
diff --git a/CleanSpec.mk b/CleanSpec.mk
index 20db309..0576234 100644
--- a/CleanSpec.mk
+++ b/CleanSpec.mk
@@ -50,7 +50,10 @@
 $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/Gallery*)
 $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/Gallery*)
 $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/Gallery*)
-
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/Gallery2)
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib*/libjni_jpegstream.so)
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib*/libjni_eglfence.so)
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib*/libjni_filtershow_filters.so)
 # ************************************************
 # NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
 # ************************************************
diff --git a/OWNERS b/OWNERS
new file mode 100644
index 0000000..ed1d60a
--- /dev/null
+++ b/OWNERS
@@ -0,0 +1,3 @@
+# Default code reviewers picked from top 3 or more developers.
+# Please update this list if you find better candidates.
+rtenneti@google.com
diff --git a/jni/Android.mk b/jni/Android.mk
index 55bb205..c08d7be 100644
--- a/jni/Android.mk
+++ b/jni/Android.mk
@@ -20,6 +20,8 @@
 
 LOCAL_MODULE := libjni_eglfence
 
+LOCAL_PRODUCT_MODULE := true
+
 LOCAL_LDLIBS := -llog -lEGL
 
 
@@ -32,6 +34,7 @@
 LOCAL_CPP_EXTENSION := .cc
 LOCAL_SDK_VERSION := 9
 LOCAL_MODULE    := libjni_filtershow_filters
+LOCAL_PRODUCT_MODULE := true
 LOCAL_SRC_FILES := filters/gradient.c \
                    filters/saturated.c \
                    filters/exposure.c \
diff --git a/jni_jpegstream/Android.mk b/jni_jpegstream/Android.mk
index 7b4d9a4..f1ea324 100644
--- a/jni_jpegstream/Android.mk
+++ b/jni_jpegstream/Android.mk
@@ -15,6 +15,7 @@
 
 LOCAL_SDK_VERSION   := 17
 LOCAL_ARM_MODE := arm
+LOCAL_PRODUCT_MODULE := true
 
 LOCAL_CFLAGS    += -ffast-math -O3 -funroll-loops
 LOCAL_CFLAGS += -Wall -Wextra -Werror
diff --git a/proguard.flags b/proguard.flags
index 72cba51..5fde2d3 100644
--- a/proguard.flags
+++ b/proguard.flags
@@ -47,6 +47,9 @@
 -keep interface com.actionbarsherlock.** { *; }
 -keepattributes *Annotation*
 
+# Required for JobIntentService
+-keep class androidx.core.app.CoreComponentFactory { *; }
+
 # Required for mp4parser
 -keep public class * implements com.coremedia.iso.boxes.Box
 
diff --git a/src/com/android/gallery3d/app/PackagesMonitor.java b/src/com/android/gallery3d/app/PackagesMonitor.java
index 9b2412f..be262fd 100644
--- a/src/com/android/gallery3d/app/PackagesMonitor.java
+++ b/src/com/android/gallery3d/app/PackagesMonitor.java
@@ -22,6 +22,7 @@
 import android.content.Intent;
 import android.content.SharedPreferences;
 import android.preference.PreferenceManager;
+import androidx.core.app.JobIntentService;
 
 import com.android.gallery3d.picasasource.PicasaSource;
 import com.android.gallery3d.util.LightCycleHelper;
@@ -37,16 +38,18 @@
     @Override
     public void onReceive(final Context context, final Intent intent) {
         intent.setClass(context, AsyncService.class);
-        context.startService(intent);
+        AsyncService.enqueueWork(context, intent);
     }
 
-    public static class AsyncService extends IntentService {
-        public AsyncService() {
-            super("GalleryPackagesMonitorAsync");
+    public static class AsyncService extends JobIntentService {
+        public static final int JOB_ID = 1;
+
+        public static void enqueueWork(Context context, Intent work) {
+            enqueueWork(context, AsyncService.class, JOB_ID, work);
         }
 
         @Override
-        protected void onHandleIntent(Intent intent) {
+        protected void onHandleWork(Intent intent) {
             onReceiveAsync(this, intent);
         }
     }