From 718c70936dacb65ec22838eefb5469e87e8c8f2f Mon Sep 17 00:00:00 2001 From: Dmitry Brant Date: Thu, 27 Sep 2018 11:39:32 -0400 Subject: [PATCH] Cherry-pick dbrant's PR from master Cherry-pick #1906 onto release branch --- .../fr/free/nrw/commons/CommonsApplication.java | 15 +++++++++++++++ .../fr/free/nrw/commons/upload/UploadService.java | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java b/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java index 5fcab1d0b..d3507a848 100644 --- a/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java +++ b/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java @@ -5,6 +5,9 @@ import android.content.Context; import android.content.SharedPreferences; import android.database.sqlite.SQLiteDatabase; import android.support.multidex.MultiDexApplication; +import android.os.Build; +import android.support.annotation.NonNull; +import android.support.annotation.RequiresApi; import com.facebook.drawee.backends.pipeline.Fresco; import com.facebook.imagepipeline.core.ImagePipelineConfig; @@ -101,10 +104,22 @@ public class CommonsApplication extends MultiDexApplication { Stetho.initializeWithDefaults(this); } + createNotificationChannel(this); // Fire progress callbacks for every 3% of uploaded content System.setProperty("in.yuvi.http.fluent.PROGRESS_TRIGGER_THRESHOLD", "3.0"); } + public static void createNotificationChannel(@NonNull Context context) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { + NotificationManager manager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); + NotificationChannel channel = manager.getNotificationChannel(NOTIFICATION_CHANNEL_ID_ALL); + if (channel == null) { + channel = new NotificationChannel(NOTIFICATION_CHANNEL_ID_ALL, + context.getString(R.string.notifications_channel_name_all), NotificationManager.IMPORTANCE_DEFAULT); + manager.createNotificationChannel(channel); + } + } + } /** * Helps in setting up LeakCanary library diff --git a/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java b/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java index 306c7272f..edae8e38d 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java @@ -122,7 +122,7 @@ public class UploadService extends HandlerService { @Override public void onCreate() { super.onCreate(); - + CommonsApplication.createNotificationChannel(getApplicationContext()); notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); }